﻿class GameReset
{
    public static Dispose()
    {
    }

    public static IsAccessible()
    {
        return (("" + document.location).indexOf("/maker.html") != -1 || Main.CheckNW());
    }

    public static Recover()
    {
        if (Main.CheckNW())
        {
            $(".hideStandalone").hide();
        }

        var options = "";
        var names: string[] = [];
        for (var item in defaultTilesets)
            names.push(item);
        names.sort();
        for (var i = 0; i < names.length; i++)
            options += "<option>" + names[i] + "</option>";
        $("#artsetSelection").find("option").remove().end().append(options);
        if (world.art.background.file.indexOf("/art/tileset2/") == 0)
            $("#artsetSelection").val("tileset2");
    }

    static Art()
    {
        world.art = JSON.parse(JSON.stringify(defaultTilesets[$("#artsetSelection").val()]));
        world.Houses = JSON.parse(JSON.stringify(defaultTilesets[$("#artsetSelection").val()].houses));
        Framework.ShowMessage("Art has been reset, but if you want to keep the change you must save.");
    }

    static Panel()
    {
        world.art.panelStyle = JSON.parse(JSON.stringify(defaultTilesets['tileset2'].panelStyle));
        Main.GenerateGameStyle();
        Framework.ShowMessage("Panels have been reset, but if you want to keep the change you must save.");
    }

    static DefaultGame()
    {
        Framework.Confirm("Are you sure you want to reset all your world's definitions and import the demo game as default content ?", () =>
        {
            var gameData = { "gameData": "{\"Tileset\":{\"background\":{\"file\":\"/art/tileset2/background.png?v=2\",\"height\":32,\"width\":32,\"types\":{\"grass\":[43,61],\"dark_grass\":[51],\"water\":[7,15],\"sand\":[25,33],\"empty\":[115],\"dirt\":[64]},\"mainType\":\"grass\",\"nbColumns\":6,\"nonWalkable\":[7,0,1,2,8,14,13,12,6,3,9,4,5,11,17,35,53,69,83,101,107,106,125,112,118,124,123,143,142,141,117,111,110,116,122,121,115,109,108,114,120,119,113],\"lastTile\":144,\"paths\":{\"grass_path\":[126,139,140,133,134,131,132,129,130,127,128,135,136,137,138]},\"transitions\":[{\"from\":\"water\",\"to\":\"grass\",\"size\":12,\"transition\":[5,3,11,9,14,12,2,0,13,8,6,1]},{\"from\":\"grass\",\"to\":\"sand\",\"size\":12,\"transition\":[18,20,30,32,27,29,21,23,19,24,26,31]},{\"from\":\"dark_grass\",\"to\":\"grass\",\"size\":12,\"transition\":[36,38,48,50,45,47,39,41,37,42,44,49]},{\"from\":\"grass\",\"to\":\"grass\",\"size\":12,\"transition\":[0,0,0,0,0,0,0,0,0,0,0,0]},{\"from\":\"grass\",\"to\":\"dirt\",\"size\":12,\"transition\":[59,57,65,63,68,66,56,54,67,62,60,55]},{\"from\":\"empty\",\"to\":\"dirt\",\"size\":12,\"transition\":[113,111,119,117,122,120,110,108,121,116,114,109]}]},\"panelStyle\":{\"file\":\"/art/tileset2/panel_style.png\",\"leftBorder\":7,\"rightBorder\":7,\"topBorder\":7,\"header\":22,\"bottomBorder\":9,\"headerColor\":\"#e5d9c8\",\"contentColor\":\"#e5d9c8\",\"buttonBorder\":\"#b2a38f\",\"buttonBackground\":\"#60441d\",\"buttonBackgroundHover\":\"#b2a38f\",\"contentHeaderBackgroundColor\":\"#e5d9c8\",\"contentHeaderColor\":\"#000000\",\"contentSelectedColor\":\"#ac8958\"},\"quickslotStyle\":{\"file\":\"/art/tileset2/quick_slot_bar.png\",\"width\":380,\"height\":40,\"leftBorder\":5,\"topBorder\":5,\"itemSpacing\":5,\"selectedSkillColor\":\"#b2a38f\"},\"statBarStyle\":{\"file\":\"/art/tileset2/main_stat_bars.png\",\"width\":90,\"height\":100,\"topBorder\":19,\"bottomBorder\":18,\"barsToDisplay\":1},\"characters\":{\"male_1\":{\"file\":\"/art/tileset2/hiro.png\",\"frames\":3,\"directions\":4,\"groundX\":35,\"groundY\":65,\"width\":210,\"height\":300,\"imageFrameDivider\":10,\"animationCycle\":\"walkCycle\",\"directionFrames\":[2,0,1,3],\"collision\":{\"radius\":16}},\"woman_1\":{\"file\":\"/art/tileset2/bani.png\",\"frames\":3,\"directions\":4,\"groundX\":35,\"groundY\":55,\"width\":210,\"height\":300,\"imageFrameDivider\":10,\"animationCycle\":\"walkCycle\",\"directionFrames\":[2,0,1,3],\"collision\":{\"radius\":16}},\"woman_2\":{\"file\":\"/art/tileset2/hana.png\",\"frames\":3,\"directions\":4,\"groundX\":35,\"groundY\":55,\"width\":210,\"height\":300,\"imageFrameDivider\":10,\"animationCycle\":\"walkCycle\",\"directionFrames\":[2,0,1,3],\"collision\":{\"radius\":16}},\"skel_1\":{\"file\":\"/art/tileset2/skel.png\",\"frames\":3,\"directions\":4,\"groundX\":35,\"groundY\":55,\"width\":210,\"height\":300,\"imageFrameDivider\":10,\"animationCycle\":\"walkCycle\",\"directionFrames\":[2,0,1,3],\"collision\":{\"radius\":16}},\"skul_1\":{\"file\":\"/art/tileset2/skul.png\",\"frames\":3,\"directions\":4,\"groundX\":35,\"groundY\":55,\"width\":210,\"height\":300,\"imageFrameDivider\":10,\"animationCycle\":\"walkCycle\",\"directionFrames\":[2,0,1,3],\"collision\":{\"radius\":16}},\"slime_1\":{\"file\":\"/art/tileset2/slime.png\",\"frames\":3,\"directions\":4,\"groundX\":35,\"groundY\":55,\"width\":210,\"height\":300,\"imageFrameDivider\":10,\"animationCycle\":\"walkCycle\",\"directionFrames\":[2,0,1,3],\"collision\":{\"radius\":16}},\"slime_2\":{\"file\":\"/art/tileset2/slyme.png\",\"frames\":3,\"directions\":4,\"groundX\":35,\"groundY\":55,\"width\":210,\"height\":300,\"imageFrameDivider\":10,\"animationCycle\":\"walkCycle\",\"directionFrames\":[2,0,1,3],\"collision\":{\"radius\":16}},\"box_1\":{\"file\":\"/art/tileset2/box.png\",\"frames\":3,\"directions\":4,\"groundX\":35,\"groundY\":54,\"width\":210,\"height\":300,\"imageFrameDivider\":10,\"animationCycle\":\"walkCycle\",\"directionFrames\":[2,0,1,3],\"collision\":{\"radius\":16}},\"rat_1\":{\"file\":\"/art/tileset2/gobo.png\",\"frames\":3,\"directions\":4,\"groundX\":35,\"groundY\":54,\"width\":210,\"height\":300,\"imageFrameDivider\":10,\"animationCycle\":\"walkCycle\",\"directionFrames\":[2,0,1,3],\"collision\":{\"radius\":16}},\"rat_2\":{\"file\":\"/art/tileset2/gobi.png\",\"frames\":3,\"directions\":4,\"groundX\":35,\"groundY\":54,\"width\":210,\"height\":300,\"imageFrameDivider\":10,\"animationCycle\":\"walkCycle\",\"directionFrames\":[2,0,1,3],\"collision\":{\"radius\":16}},\"bear_1\":{\"file\":\"/art/tileset2/kit.png\",\"frames\":3,\"directions\":4,\"groundX\":28,\"groundY\":45,\"width\":210,\"height\":300,\"imageFrameDivider\":10,\"animationCycle\":\"walkCycle\",\"directionFrames\":[2,0,1,3],\"collision\":{\"radius\":16}}},\"houses\":{\"house_1\":{\"collisionX\":2,\"collisionY\":237,\"collisionWidth\":145,\"collisionHeight\":68,\"parts\":[{\"part\":\"body\",\"x\":0,\"y\":195},{\"part\":\"roof\",\"x\":0,\"y\":2},{\"part\":\"window_1\",\"x\":18,\"y\":201},{\"part\":\"window_1\",\"x\":92,\"y\":201},{\"part\":\"vent\",\"x\":92,\"y\":24}]},\"house_2\":{\"collisionX\":2,\"collisionY\":237,\"collisionWidth\":145,\"collisionHeight\":68,\"parts\":[{\"part\":\"body\",\"x\":0,\"y\":195},{\"part\":\"roof\",\"x\":0,\"y\":2},{\"part\":\"vent\",\"x\":92,\"y\":24},{\"part\":\"window_2\",\"x\":17,\"y\":204},{\"part\":\"window_2\",\"x\":92,\"y\":204}]}},\"house_parts\":{\"window_1\":{\"file\":\"/art/tileset2/houses.png\",\"x\":12,\"y\":0,\"width\":35,\"height\":39},\"window_2\":{\"file\":\"/art/tileset2/houses.png\",\"x\":57,\"y\":0,\"width\":37,\"height\":39},\"vent\":{\"file\":\"/art/tileset2/houses.png\",\"x\":95,\"y\":0,\"width\":32,\"height\":53},\"roof\":{\"file\":\"/art/tileset2/houses.png\",\"x\":0,\"y\":58,\"width\":148,\"height\":193},\"body\":{\"file\":\"/art/tileset2/houses.png\",\"x\":0,\"y\":250,\"width\":148,\"height\":110}},\"objects\":{\"tree_1\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":2,\"y\":2,\"groundX\":27,\"groundY\":52,\"width\":53,\"height\":62,\"collision\":{\"radius\":32}},\"tree_2\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":2,\"y\":69,\"groundX\":28,\"groundY\":53,\"width\":53,\"height\":62,\"collision\":{\"radius\":32}},\"tree_3\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":62,\"y\":35,\"groundX\":15,\"groundY\":22,\"width\":29,\"height\":29},\"tree_4\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":62,\"y\":102,\"groundX\":16,\"groundY\":22,\"width\":29,\"height\":29},\"mediumGrass_1\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":105,\"y\":125,\"groundX\":4,\"groundY\":6,\"width\":15,\"height\":22},\"mediumGrass_2\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":133,\"y\":130,\"groundX\":7,\"groundY\":9,\"width\":14,\"height\":17},\"smallGrass_1\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":158,\"y\":134,\"groundX\":6,\"groundY\":4,\"width\":11,\"height\":8},\"smallGrass_2\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":177,\"y\":134,\"groundX\":6,\"groundY\":4,\"width\":11,\"height\":8},\"small_bag\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":95,\"y\":88,\"groundX\":15,\"groundY\":12,\"width\":29,\"height\":23},\"chest_1\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":129,\"y\":58,\"groundX\":15,\"groundY\":15,\"width\":29,\"height\":29},\"tombstone_1\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":96,\"y\":10,\"groundX\":16,\"groundY\":15,\"width\":32,\"height\":29},\"tombstone_2\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":96,\"y\":55,\"groundX\":15,\"groundY\":12,\"width\":29,\"height\":23},\"tombstone_3\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":162,\"y\":7,\"groundX\":12,\"groundY\":16,\"width\":23,\"height\":32},\"wall_1\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":162,\"y\":58,\"groundX\":15,\"groundY\":15,\"width\":29,\"height\":29},\"sign_1\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":167,\"y\":93,\"groundX\":12,\"groundY\":16,\"width\":23,\"height\":32},\"fence_1\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":127,\"y\":96,\"groundX\":18,\"groundY\":10,\"width\":35,\"height\":20},\"fire_camp\":{\"file\":\"/art/tileset2/objects.png?v=2\",\"x\":9,\"y\":140,\"groundX\":33,\"groundY\":22,\"width\":64,\"height\":42,\"collision\":{\"radius\":32},\"particleEffect\":\"fire\"}},\"sounds\":{\"The Moldau\":{\"mp3\":\"/Sounds/sm_mold_section.mp3\",\"ogg\":\"/Sounds/sm_mold_section.ogg\"}}},\"Name\":\"demo\",\"Description\":\"A simple demo game, just to show what you can do very quickly with the default content.\",\"Skills\":[{\"Name\":\"Attack\",\"Source\":\"/// Name: Attack,string\\n/// DisplayName: Attack,string\\n/// AutoReceive: true,boolean\\n/// Icon: /art/tileset2/fast_attack.png,image_upload\\n/// Quickslot: true,boolean\\n/// QuickslotEditable: false,boolean\\n/// BaseRechargeSpeed: 0.5,number\\n/// BaseDamage: 5,number\\n/// DamageMultiplier: 1,number\\n/// Proximity: 40,number\\n\\n\\n// Default attack skill. Will be invoked while clicking on a monster.\\n\\nfunction Action(onActor)\\n{\\n    if(!Actor.IsMonster(onActor))\\n        return false;\\n    // If too far, simply skip\\n    if(Actor.DistanceToPlayer(onActor) > Skill.RetreiveSetting('Proximity'))\\n        return false;\\n    if(Player.IsAnimationRunning())\\n        return false;\\n    // Check if at least @BaseRechargeSpeed@ sec passed between the attacks. If not skip the attack.\\n    if(Player.TimerRunning(Player.GetCurrentSkill()))\\n        return false;\\n    // Starts the Attack timer, to avoid to attack too frequently.\\n    Player.StartTimer(Player.GetCurrentSkill(), Skill.RetreiveSetting('BaseRechargeSpeed'));\\n\\n    damage = (Skill.RetreiveSetting('BaseDamage') + Inventory.GetWearedEffect('Base Damage')) * Skill.RetreiveSetting('DamageMultiplier') * (((Player.GetStat('Strength') - 1) / 5) + 1);\\n    damage = Math.Ceil(damage * (Math.Rnd() / 2 + 0.5));\\n    Player.SetVariable('attackDamage', damage);\\n\\n    Player.SetAnimation('attack');\\n    Player.ExecuteWhenAnimationDone('AttackAnimationDone');\\n    Player.SetVariable('attackActor', onActor);\\n    return true;\\n}\\n\\n// Attack after the animation is done\\nfunction AttackAnimationDone()\\n{\\n    damage = Player.GetVariable('attackDamage');\\n    onActor = Player.GetVariable('attackActor');\\n    Actor.ReduceStat(onActor, 'Life', damage);\\n    Actor.SetAnimation(onActor, 'damage');\\n}\",\"Auto\":true},{\"Name\":\"StrongAttack\",\"Source\":\"/// Name: StrongAttack,string\\n/// DisplayName: Strong Attack,string\\n/// AutoReceive: true,boolean\\n/// Icon: /art/tileset2/fist_icon.png,image_upload\\n/// Quickslot: true,boolean\\n/// QuickslotEditable: true,boolean\\n/// BaseRechargeSpeed: 2,number\\n/// BaseDamage: 20,number\\n/// DamageMultiplier: 4,number\\n/// Proximity: 40,number\\n\\n\\n// Strong (slow) attack skill. Will be invoked while clicking on a monster.\\n\\n\",\"Auto\":true},{\"Name\":\"Heal\",\"Source\":\"/// Name: Heal,string\\n/// DisplayName: Heal,string\\n/// AutoReceive: true,boolean\\n/// Icon: /art/tileset2/heal.png,image_upload\\n/// Quickslot: true,boolean\\n/// QuickslotEditable: true,boolean\\n/// BaseRechargeSpeed: 10,number\\n/// LifeGained: 20,number\\n\\n\\n// Heal skill.\\n\\nfunction Activate()\\n{\\n    if(Player.TimerRunning(Player.GetCurrentSkill()))\\n        return false;\\n    Player.StartTimer(Player.GetCurrentSkill(), @BaseRechargeSpeed@);\\n\\n    Display.AddMapMessage(Player.GetX(), Player.GetY(), 'Healed !');\\n    Player.SetStat('Life', Player.GetStat('Life') + @LifeGained@);\\n    return false;\\n}\\n\",\"Auto\":true}],\"Stats\":[{\"Name\":\"Life\",\"Source\":\"/// Name: Life,string\\n/// DisplayName: HP,string\\n/// DefaultValue: 10,number\\n/// MonsterStat: true,boolean\\n\\n\\n// Default life stat.\\n\\nfunction ValueChange(currentActor, newValue, wishedValue, oldValue)\\n{\\n    diff = wishedValue - oldValue;\\n    color = '#FFFFFF';\\n    if(Actor.IsMonster(currentActor))\\n        color = '#FF0000';\\n    if(diff < 0)\\n        Display.AddMapMessage(Actor.GetX(currentActor), Actor.GetY(currentActor), Math.abs(diff) + ' dmg', color);\\n    else if(diff > 0)\\n        Display.AddMapMessage(Actor.GetX(currentActor), Actor.GetY(currentActor), diff + ' healed', color);\\n\\n    // Actor dies...\\n    if(newValue <= 0)\\n    {\\n        // If it's a monster simply destroy it \\n        if(Actor.IsMonster(currentActor))\\n        {\\n            Actor.Kill(currentActor);\\n            // Increase the game statistics\\n            Game.AddStatistic('monster_kill');\\n        }\\n        // It's the player, reset the life to it's max and respawn it to the initial position.\\n        else\\n        {\\n            Player.SetStat('Life', Player.GetStatMaxValue('Life'));\\n            // Increase the game statistics\\n            Game.AddStatistic('player_kill');\\n            Player.Respawn();\\n        }\\n    }\\n}\\n\\n// Max life is the DefaultValue + 10 * strength\\nfunction MaxValue(currentActor)\\n{\\n    return @DefaultValue@ + Player.GetStat('Strength') * 10;\\n}\",\"DefaultValue\":10,\"MonsterStat\":true},{\"Name\":\"Energy\",\"Source\":\"/// Name: Energy,string\\n/// DisplayName: Mana,string\\n/// DefaultValue: 10,number\\n/// MonsterStat: false,boolean\\n\\n\\n// Default energy / magic stat.\\n\\nfunction ValueChange(currentActor, newValue, wishedValue, oldValue)\\n{\\n}\\n\\n// Max energy is the DefaultValue + 10 * intelligence\\nfunction MaxValue(currentActor)\\n{\\n    return @DefaultValue@ + Player.GetStat('Intelligence') * 10;\\n}\",\"DefaultValue\":10,\"MonsterStat\":false},{\"Name\":\"Experience\",\"Source\":\"/// Name: Experience,string\\n/// DisplayName: Experience,string\\n/// DefaultValue: 0,number\\n/// MonsterStat: false,boolean\\n\\n\\n// Default experience stat.\\n\\n// We need to handle the expericence change, for example from killing monsters. If the max experience is reach the player gains a new level.\\nfunction ValueChange(currentActor, newValue, wishedValue, oldValue)\\n{\\n    // The stat has been maxed => we reached a new level at least\\n    if(wishedValue != newValue)\\n    {\\n        // Store the wished value and work with it\\n        tempValue = wishedValue;\\n        // Runs while we still have to increase the stat\\n        do\\n        {\\n            // Calculate the difference of experience between the levels\\n            currentLevel = CalcRequiredExperience(Player.GetStat('Level'));\\n            nextLevel = CalcRequiredExperience(Player.GetStat('Level') + 1); \\n            diff = nextLevel - currentLevel;\\n            // Increase the player level\\n            Player.IncreaseStat('Level', 1);\\n            // Increase the game statistics\\n            Game.AddStatistic('level_up');\\n            // Calculate the remaining experience\\n            tempValue = tempValue - diff;\\n\\n            currentLevel = CalcRequiredExperience(Player.GetStat('Level'));\\n            nextLevel = CalcRequiredExperience(Player.GetStat('Level') + 1); \\n            diff = nextLevel - currentLevel;\\n        } while(diff < tempValue); // If we still are bigger than the new max, then we need to run this loop again.\\n        // Set the remaining as current experience.\\n        Player.SetStat('Experience', tempValue);\\n    }\\n}\\n\\n// Calculates how much experience the player has to gain to be able to level up.\\nfunction MaxValue(currentActor)\\n{\\n    currentLevel= CalcRequiredExperience(Player.GetStat('Level'));\\n    nextLevel= CalcRequiredExperience(Player.GetStat('Level') + 1);\\n    return (nextLevel - currentLevel);\\n}\\n\\n// Calculates the experience needed for each level.\\nfunction CalcRequiredExperience(level)\\n{\\n    return 100 + 100 * Math.Pow(level - 1, 3);\\n}\\n\",\"DefaultValue\":0,\"MonsterStat\":false},{\"Name\":\"Level\",\"Source\":\"/// Name: Level,string\\n/// DisplayName: Level,string\\n/// DefaultValue: 1,number\\n/// MonsterStat: false,boolean\\n\\n\\n// Default Level stat.\\n\\nfunction ValueChange(currentActor, newValue, wishedValue, oldValue)\\n{\\n}\\n\\n// Currently the game doesn't allow more than level 1000\\nfunction MaxValue(currentActor)\\n{\\n    return 1000;\\n}\",\"DefaultValue\":1,\"MonsterStat\":false},{\"Name\":\"Money\",\"Source\":\"/// Name: Money,string\\n/// DisplayName: Gold,string\\n/// DefaultValue: 0,number\\n/// MonsterStat: false,boolean\\n\\n\\n// Default Money stat.\\n\\nfunction ValueChange(currentActor, newValue, wishedValue, oldValue)\\n{\\n}\",\"DefaultValue\":0,\"MonsterStat\":false},{\"Name\":\"Strength\",\"Source\":\"/// Name: Strength,string\\n/// DisplayName: Strength,string\\n/// DefaultValue: 1,number\\n/// MonsterStat: false,boolean\\n\\n\\n// Default Strength stat.\\n\\n// If the stat changed (normally only going up), we need to reset the life stat.\\nfunction ValueChange(currentActor, newValue, wishedValue, oldValue)\\n{\\n    Player.SetStat('Life',Player.GetStatMaxValue('Life'));\\n}\\n\\n// Checks if the player can add some stats.\\n// The current rule is total stat points == level * 3 +5, which means for each level gained the player can assign 3 stat points.\\nfunction CanUpgrade()\\n{\\n    return (Player.GetStat('Level')*3+5)-(Player.GetStat('Strength')+Player.GetStat('Dexterity')+Player.GetStat('Intelligence')) > 0;\\n}\",\"DefaultValue\":1,\"MonsterStat\":false},{\"Name\":\"Dexterity\",\"Source\":\"/// Name: Dexterity,string\\n/// DisplayName: Dexterity,string\\n/// DefaultValue: 1,number\\n/// MonsterStat: false,boolean\\n\\n\\n// Default Dexterity stat.\\n\\nfunction ValueChange(currentActor, newValue, wishedValue, oldValue)\\n{\\n}\\n\\n// Checks if the player can add some stats.\\n// The current rule is total stat points == level * 3 +5, which means for each level gained the player can assign 3 stat points.\\nfunction CanUpgrade()\\n{\\n    return (Player.GetStat('Level')*3+5)-(Player.GetStat('Strength')+Player.GetStat('Dexterity')+Player.GetStat('Intelligence')) > 0;\\n}\",\"DefaultValue\":1,\"MonsterStat\":false},{\"Name\":\"Intelligence\",\"Source\":\"/// Name: Intelligence,string\\n/// DisplayName: Intelligence,string\\n/// DefaultValue: 1,number\\n/// MonsterStat: false,boolean\\n\\n\\n// Default Intelligence stat.\\n\\nfunction ValueChange(currentActor, newValue, wishedValue, oldValue)\\n{\\n    Player.SetStat('Energy',Player.GetStatMaxValue('Energy'));\\n}\\n\\n// Checks if the player can add some stats.\\n// The current rule is total stat points == level * 3 +5, which means for each level gained the player can assign 3 stat points.\\nfunction CanUpgrade()\\n{\\n    return (Player.GetStat('Level')*3+5)-(Player.GetStat('Strength')+Player.GetStat('Dexterity')+Player.GetStat('Intelligence')) > 0;\\n}\",\"DefaultValue\":1,\"MonsterStat\":false}],\"Monsters\":[{\"Name\":\"DefaultMonster\",\"Source\":\"/// Name: DefaultMonster,string\\n/// Speed: 2,number\\n/// BaseDamage: 5,number\\n/// AttackSpeed: 2,number\\n/// ProximityAttack: 40,number\\n\\n\\n// Default monster behavior. If not re-written on the monster code, this default code will be used.\\n// Function called on each game loop to run monster attacks, or others.\\nfunction Handle(monster)\\n{\\n    // If the player is in a NPC dialog the monster should just randomly walk around.\\n    if(Player.IsInDialog() == true)\\n    {\\n        Monster.RandomWalk(monster);\\n        return true;\\n    }\\n    \\n    // If the monster is near the player, he shall try to attack.\\n    if(Actor.DistanceToPlayer(monster) <= Monster.RetreiveSetting(monster,'ProximityAttack'))\\n    {\\n        Attack(monster);\\n        return true;\\n    }\\n    \\n    // Moves toward the player if it's nearer than 10 tiles.\\n    Monster.HuntWalk(monster, 10);\\n    \\n    // If we returns false the engine would handle it for us.\\n    return true;\\n}\\n\\n// Handle Monster attacks.\\nfunction Attack(monster)\\n{\\n    if(Actor.DistanceToPlayer(monster) > Monster.RetreiveSetting(monster,'ProximityAttack'))\\n        return false;\\n    if(Actor.IsAnimationRunning(monster))\\n        return false;\\n    // Check if at least @BaseRechargeSpeed@ sec passed between the attacks. If not skip the attack.\\n    if(Actor.TimerRunning(monster, 'Attack'))\\n        return false;\\n    // Starts the Attack timer, to avoid to attack too frequently.\\n    Actor.StartTimer(monster, 'Attack', Monster.RetreiveSetting(monster,'AttackSpeed'));\\n\\tActor.SetAnimation(monster, 'attack');\\n    Actor.ExecuteWhenAnimationDone(monster, 'AttackAnimationDone');\\n    return true;\\n}\\n\\n// Attack after the animation is done\\nfunction AttackAnimationDone(monster)\\n{\\n    damage = Monster.RetreiveSetting(monster, 'BaseDamage'); \\n    damage = damage - Inventory.GetWearedEffect('Protection');\\n    if(damage <= 0)\\n        return true;\\n    Player.ReduceStat('Life',damage);\\n    Player.SetAnimation('damage');\\n    return true;\\n}\\n\\n\",\"StatDrop\":[],\"ItemDrop\":[]},{\"Name\":\"Rat\",\"Source\":\"/// Name: Rat,string\\n/// Speed: 2,number\\n/// BaseDamage: 2,number\\n/// AttackSpeed: 2,number\\n/// ProximityAttack: 40,number\\n/// Art: rat_1,monster_art\\n/// Life: 10,number\\n\\n\\n// A simple rat.\\n\\n\",\"Art\":\"rat_1\",\"StatDrop\":[{\"Name\":\"Experience\",\"Quantity\":5,\"Probability\":100},{\"Name\":\"Money\",\"Quantity\":2,\"Probability\":50}],\"ItemDrop\":[]},{\"Name\":\"Brown bear\",\"Source\":\"/// Name: Brown bear,string\\n/// Speed: 1,number\\n/// BaseDamage: 10,number\\n/// AttackSpeed: 3,number\\n/// ProximityAttack: 40,number\\n/// Art: bear_1,monster_art\\n/// Life: 50,number\\n\\n\\n// A simple bear.\\n\\n\",\"Art\":\"bear_1\",\"StatDrop\":[{\"Name\":\"Experience\",\"Quantity\":25,\"Probability\":100},{\"Name\":\"Money\",\"Quantity\":50,\"Probability\":50}],\"ItemDrop\":[]},{\"Name\":\"box\",\"Source\":\"/// Name: box,string\\n/// Speed: 2,number\\n/// BaseDamage: 5,number\\n/// AttackSpeed: 2,number\\n/// ProximityAttack: 40,number\\n/// Art: box_1,monster_art\\n/// Life: 10,number\\n\\n\\n\",\"Art\":\"box_1\",\"StatDrop\":[],\"ItemDrop\":[]}],\"NPCs\":[{\"Dialogs\":[{\"Answers\":[{\"Text\":\"I have your spoon!\",\"Actions\":[{\"Values\":[\"Spoon\",\"1\"],\"Name\":\"RemoveItem\"},{\"Values\":[\"Retrieve My Spoon\"],\"Name\":\"CompleteQuest\"}],\"Conditions\":[{\"Values\":[\"Spoon\",\"=\",\"1\"],\"Name\":\"CheckInventory\"}],\"JumpTo\":4},{\"Text\":\"Do you have a job for me?\",\"Actions\":[],\"Conditions\":[{\"Values\":[\"Retrieve My Spoon\"],\"Name\":\"CheckQuestCompleted\"}],\"JumpTo\":3},{\"Text\":\"Do you have a job for me?\",\"Actions\":[],\"Conditions\":[{\"Values\":[\"Retrieve My Spoon\"],\"Name\":\"CheckQuestStarted\"},{\"Values\":[\"Retrieve My Spoon\"],\"Name\":\"CheckQuestNotCompleted\"},{\"Values\":[\"Spoon\",\"<\",\"1\"],\"Name\":\"CheckInventory\"}],\"JumpTo\":2},{\"Text\":\"Do you have a job for me?\",\"Actions\":[{\"Values\":[\"Retrieve My Spoon\"],\"Name\":\"StartQuest\"}],\"Conditions\":[{\"Values\":[\"Retrieve My Spoon\"],\"Name\":\"CheckQuestNotStarted\"}],\"JumpTo\":1},{\"Text\":\"Nothing thanks.\",\"Actions\":[],\"Conditions\":[],\"JumpTo\":-1}],\"Text\":\"Hi @name@!\\n\\nWhat can I do for you today?\"},{\"Answers\":[{\"Text\":\"Ok\",\"Actions\":[{\"Values\":[\"Apple\",\"10\"],\"Name\":\"GiveItem\"},{\"Values\":[\"Wood Stick\",\"1\"],\"Name\":\"GiveItem\"}],\"Conditions\":[],\"JumpTo\":-1}],\"Text\":\"Yes please, I lost my spoon in the cave under my house. Could you please go look if you can find it? I simply don't have the time right now to do it myself as I must play with the crumbs.\\n\\nYou can find the cave entrance on the left side of my house. However be careful there could be some monsters wandering around. Take this mighty weapon, equip yourself (using the top left most icon) and go find my beloved spoon. Ooo before you leave take a few of those apples too, they may help you.\\n\\nYou know you always need a spoon when you search mushrooms.\"},{\"Answers\":[{\"Text\":\"Ok will do!\",\"Actions\":[],\"Conditions\":[],\"JumpTo\":-1}],\"Text\":\"Please bring back my spoon... I'm sad without it...\"},{\"Answers\":[{\"Text\":\"Ok, as you want...\",\"Actions\":[],\"Conditions\":[],\"JumpTo\":-1}],\"Text\":\"Nothing else I could give you to do... Sorry... Now please leave me play alone with the crumbs.\"},{\"Answers\":[{\"Text\":\"Sure...\",\"Actions\":[],\"Conditions\":[],\"JumpTo\":-1}],\"Text\":\"Thanks you! That was really what I needed to push the crumbs around. Can you leave me alone now? As you do too much wind and my crumbs get scared.\\n\\n[b][red]And by the way, if that wasn't exciting enough for you, why don't you create your own dotworld game next?[/red][/b]\"}],\"Name\":\"Janet Grimtongue\",\"Look\":\"woman_2\",\"ShopItems\":[]}],\"Houses\":{\"house_1\":{\"collisionX\":2,\"collisionY\":237,\"collisionWidth\":145,\"collisionHeight\":68,\"parts\":[{\"part\":\"body\",\"x\":0,\"y\":195},{\"part\":\"roof\",\"x\":0,\"y\":2},{\"part\":\"window_1\",\"x\":18,\"y\":201},{\"part\":\"window_1\",\"x\":92,\"y\":201},{\"part\":\"vent\",\"x\":92,\"y\":24}]},\"house_2\":{\"collisionX\":2,\"collisionY\":237,\"collisionWidth\":145,\"collisionHeight\":68,\"parts\":[{\"part\":\"body\",\"x\":0,\"y\":195},{\"part\":\"roof\",\"x\":0,\"y\":2},{\"part\":\"vent\",\"x\":92,\"y\":24},{\"part\":\"window_2\",\"x\":17,\"y\":204},{\"part\":\"window_2\",\"x\":92,\"y\":204}]}},\"Zones\":[{\"GeneratorParameters\":{\"zoomFactor\":60,\"levels\":[{\"type\":\"water\",\"maxLevel\":0.3},{\"type\":\"grass\",\"maxLevel\":0.9},{\"type\":\"dark_grass\",\"maxLevel\":1}]},\"Objects\":[{\"Name\":\"smallGrass_1\",\"PlaceOn\":[\"grass\"],\"Frequency\":3},{\"Name\":\"mediumGrass_1\",\"PlaceOn\":[\"grass\"],\"Frequency\":3},{\"Name\":\"mediumGrass_2\",\"PlaceOn\":[\"grass\"],\"Frequency\":3},{\"Name\":\"flower_1\",\"PlaceOn\":[\"grass\"],\"Frequency\":0.1},{\"Name\":\"flower_2\",\"PlaceOn\":[\"grass\"],\"Frequency\":0.1},{\"Name\":\"flower_3\",\"PlaceOn\":[\"grass\"],\"Frequency\":0.1},{\"Name\":\"tree_1\",\"PlaceOn\":[\"grass\"],\"Frequency\":0.1},{\"Name\":\"tree_2\",\"PlaceOn\":[\"grass\"],\"Frequency\":0.1},{\"Name\":\"tree_3\",\"PlaceOn\":[\"grass\"],\"Frequency\":0.1},{\"Name\":\"tree_4\",\"PlaceOn\":[\"grass\"],\"Frequency\":0.1}],\"Monsters\":[{\"Name\":\"Rat\",\"PlaceOn\":[\"grass\"],\"Frequency\":0.2},{\"Name\":\"Brown bear\",\"PlaceOn\":[\"grass\"],\"Frequency\":0.05}],\"Name\":\"Base\",\"BaseTileType\":\"grass\",\"Generator\":\"Perlin\",\"MapEffect\":\"None\"},{\"GeneratorParameters\":{\"caveWidth\":50,\"caveHeight\":50,\"pathSize\":5,\"walkTile\":\"dirt\",\"seed\":654676},\"Objects\":[],\"Monsters\":[{\"Name\":\"box\",\"Frequency\":0.03,\"PlaceOn\":[\"dirt\"]}],\"Name\":\"Cave\",\"MapEffect\":\"None\",\"BaseTileType\":\"empty\",\"Generator\":\"Cave\"},{\"GeneratorParameters\":null,\"Objects\":[],\"Monsters\":[],\"Name\":\"In House\",\"MapEffect\":\"None\",\"BaseTileType\":\"empty\",\"Generator\":\"Constant\"}],\"ShowFPS\":false,\"InventoryObjects\":[{\"UsageConditions\":[],\"UnwearConditions\":[],\"WearConditions\":[],\"DropConditions\":[{\"Name\":\"CheckFalse\",\"Values\":[]}],\"UsageActions\":[],\"Name\":\"Wood Stick\",\"ObjectType\":\"Weapon\",\"Slots\":[\"RightHand\"],\"Weight\":2,\"Price\":2,\"Description\":\"A simple wood stick to defend yourself\",\"MaxStack\":1,\"Action\":null,\"ActionCode\":null,\"Parameters\":[{\"Name\":\"Base Damage\",\"Value\":\"10\"},{\"Name\":\"Attack Speed\",\"Value\":\"0.5\"}]},{\"UsageConditions\":[],\"UnwearConditions\":[],\"WearConditions\":[],\"DropConditions\":[],\"UsageActions\":[],\"Name\":\"Apple\",\"ObjectType\":\"Food\",\"Slots\":[],\"Weight\":1,\"Price\":1,\"Description\":\"A red apple\",\"MaxStack\":10,\"Action\":null,\"ActionCode\":null,\"Parameters\":[{\"Name\":\"Life Recover\",\"Value\":\"10\"}]},{\"UsageConditions\":[],\"UnwearConditions\":[],\"WearConditions\":[],\"DropConditions\":[{\"Name\":\"CheckFalse\",\"Values\":[]}],\"UsageActions\":[],\"Name\":\"Spoon\",\"ObjectType\":\"Weapon\",\"Slots\":[],\"Weight\":0,\"Price\":0,\"Description\":\"The spoon I should bring back.\",\"MaxStack\":1,\"Action\":null,\"ActionCode\":\"// Uncomment the functions you want to define.\\n// This functions will overwrite the object type functions if they exist.\\n\\n// Checks if the player can unwear the item\\n// function CanUnwear(itemName)\\n// {\\n//      return true;\\n// }\\n\\n// Checks if the player can wear the item\\n// function CanWear(itemName)\\n// {\\n//      return true;\\n// }\\n\\n// Checks if the player can use the item\\n// function CanUse(itemName)\\n// {\\n//      return true;\\n// }\\n\\n// Checks if the player can drop the item\\n// function CanDrop(itemName)\\n// {\\n//      return true;\\n// }\\n\\n// Executed when the player uses the item\\n// function Use(itemName)\\n// {\\n// }\\n\",\"Parameters\":[{\"Name\":\"Base Damage\",\"Value\":\"1\"},{\"Name\":\"Attack Speed\",\"Value\":\"1\"}]}],\"InventoryObjectTypes\":[{\"UsageConditions\":[],\"WearConditions\":[],\"UnwearConditions\":[],\"DropConditions\":[],\"UsageActions\":[],\"Name\":\"Head Armor\",\"Group\":\"Armor\",\"Action\":null,\"ActionCode\":null,\"Parameters\":[{\"Name\":\"Protection\",\"DefaultValue\":\"1\"}]},{\"UsageConditions\":[],\"WearConditions\":[],\"UnwearConditions\":[],\"DropConditions\":[],\"UsageActions\":[],\"Name\":\"Body Armor\",\"Group\":\"Armor\",\"Action\":null,\"ActionCode\":null,\"Parameters\":[{\"Name\":\"Protection\",\"DefaultValue\":\"1\"}]},{\"UsageConditions\":[],\"WearConditions\":[],\"UnwearConditions\":[],\"DropConditions\":[],\"UsageActions\":[],\"Name\":\"Leg Armor\",\"Group\":\"Armor\",\"Action\":null,\"ActionCode\":null,\"Parameters\":[{\"Name\":\"Protection\",\"DefaultValue\":\"1\"}]},{\"UsageConditions\":[],\"WearConditions\":[],\"UnwearConditions\":[],\"DropConditions\":[],\"UsageActions\":[],\"Name\":\"Feet Armor\",\"Group\":\"Armor\",\"Action\":null,\"ActionCode\":null,\"Parameters\":[{\"Name\":\"Protection\",\"DefaultValue\":\"1\"}]},{\"UsageConditions\":[],\"WearConditions\":[],\"UnwearConditions\":[],\"DropConditions\":[],\"UsageActions\":[],\"Name\":\"Hand Armor\",\"Group\":\"Armor\",\"Action\":null,\"ActionCode\":null,\"Parameters\":[{\"Name\":\"Protection\",\"DefaultValue\":\"1\"}]},{\"UsageConditions\":[],\"WearConditions\":[],\"UnwearConditions\":[],\"DropConditions\":[],\"UsageActions\":[],\"Name\":\"Weapon\",\"Group\":\"Weapon\",\"Action\":null,\"ActionCode\":null,\"Parameters\":[{\"Name\":\"Base Damage\",\"DefaultValue\":\"1\"},{\"Name\":\"Attack Speed\",\"DefaultValue\":\"1\"}]},{\"UsageConditions\":[],\"WearConditions\":[],\"UnwearConditions\":[],\"DropConditions\":[],\"UsageActions\":[{\"Name\":\"IncreaseStat\",\"Values\":[\"Life\",\"Inventory.ObjectParameter(currentItem, 'Life Recover')\"]},{\"Name\":\"RemoveCurrentItem\",\"Values\":[\"1\"]}],\"Name\":\"Potion\",\"Group\":\"Aid\",\"Action\":\"Drink\",\"ActionCode\":\"function Use(currentItem)\\n{\\n\\tInventory.RemoveItem(currentItem);\\n\\tif(Inventory.ObjectParameterExists(currentItem,'Life Recover'))\\n\\t\\tPlayer.IncreaseStat('Life',Inventory.ObjectParameter(currentItem,'Life Recover'));\\n}\",\"Parameters\":[{\"Name\":\"Life Recover\",\"DefaultValue\":\"1\"}]},{\"UsageConditions\":[],\"WearConditions\":[],\"UnwearConditions\":[],\"DropConditions\":[],\"UsageActions\":[{\"Name\":\"IncreaseStat\",\"Values\":[\"Life\",\"Inventory.ObjectParameter(currentItem, 'Life Recover')\"]},{\"Name\":\"RemoveCurrentItem\",\"Values\":[\"1\"]}],\"Name\":\"Food\",\"Group\":\"Aid\",\"Action\":\"Eat\",\"ActionCode\":\"function Use(currentItem)\\n{\\n\\tInventory.RemoveItem(currentItem);\\n\\tif(Inventory.ObjectParameterExists(currentItem,'Life Recover'))\\n\\t\\tPlayer.IncreaseStat('Life',Inventory.ObjectParameter(currentItem,'Life Recover'));\\n}\",\"Parameters\":[{\"Name\":\"Life Recover\",\"DefaultValue\":\"0\"}]}],\"InventorySlots\":[{\"Name\":\"Body\"},{\"Name\":\"Feet\"},{\"Name\":\"Head\"},{\"Name\":\"LeftHand\"},{\"Name\":\"LeftHandFinger\"},{\"Name\":\"Legs\"},{\"Name\":\"Neck\"},{\"Name\":\"RightHand\"},{\"Name\":\"RightHandFinger\"}],\"SpawnPoint\":{\"X\":0,\"Y\":0,\"Zone\":\"Base\"},\"InitializeSteps\":[],\"ChatLink\":true,\"ChatSmilies\":true,\"StartLook\":\"male_1\",\"SmallBagObject\":\"small_bag\",\"SimplifiedObjectLogic\":true,\"PublicView\":false,\"TemporaryEffects\":[],\"Quests\":[{\"JournalEntries\":[],\"Name\":\"Retrieve My Spoon\",\"Description\":\"Janet Grimtongue asked me to retrieve her spoon which she lost the last time she went searching mushrooms in the cave under her house. I should therefore use the stairs in the left side of her house and search the cave under. It seems there could be some [b]monsters[/b] around so I must be careful.\"}],\"ShowInventory\":true,\"ShowStats\":true,\"ShowJournal\":true,\"ShowMessage\":true,\"ParticleEffects\":[{\"Name\":\"blood\",\"InitialParticles\":0,\"MaxParticles\":1000,\"MaxAge\":100,\"MaxSpeed\":10,\"Emitter\":{\"SpawnRate\":4,\"Velocity\":1,\"Direction\":-90,\"JitterDirection\":5,\"JitterVelocity\":0.5,\"JitterX\":3,\"JitterY\":3,\"StopEmittingAfter\":100,\"__type\":\"ParticleEmitterPoint\"},\"Effectors\":[{\"Gravity\":0.02,\"GravityDirection\":90,\"__type\":\"ParticleGravity\"},{\"StartColor\":\"#FF0000\",\"EndColor\":\"\",\"__type\":\"ParticleColor\"},{\"ParticleStartSize\":1,\"ParticleStartAgeSizeChange\":0,\"ParticleEndSize\":3,\"__type\":\"ParticleSize\"},{\"ParticleStartOpacity\":1,\"ParticleStartAgeOpacityChange\":10,\"ParticleEndOpacity\":0,\"__type\":\"ParticleOpacity\"}]},{\"Name\":\"torch\",\"InitialParticles\":0,\"MaxParticles\":1000,\"MaxAge\":100,\"MaxSpeed\":10,\"Emitter\":{\"OffsetX\":0,\"OffsetY\":0,\"SpawnRate\":0.5,\"Velocity\":1,\"Direction\":-90,\"JitterDirection\":10,\"JitterVelocity\":0.1,\"JitterX\":5,\"JitterY\":5,\"StopEmittingAfter\":null,\"__type\":\"ParticleEmitterPoint\"},\"Effectors\":[{\"Strength\":0.005,\"FrequencyAlphaX\":20,\"FrequencyAlphaY\":20,\"FrequencyBetaX\":10,\"FrequencyBetaY\":10,\"AgeFactor\":0.5,\"__type\":\"ParticleWave\"},{\"Gravity\":0.002,\"GravityDirection\":180,\"__type\":\"ParticleGravity\"},{\"StartColor\":\"#FFFF00\",\"EndColor\":\"#FF0000\",\"__type\":\"ParticleColor\"},{\"ParticleStartSize\":2,\"ParticleStartAgeSizeChange\":50,\"ParticleEndSize\":6,\"__type\":\"ParticleSize\"},{\"ParticleStartOpacity\":1,\"ParticleStartAgeOpacityChange\":50,\"ParticleEndOpacity\":0,\"__type\":\"ParticleOpacity\"}]},{\"Name\":\"fire\",\"InitialParticles\":0,\"ParticleType\":1,\"MaxParticles\":1000,\"MaxAge\":100,\"MaxSpeed\":10,\"Emitter\":{\"OffsetX\":0,\"OffsetY\":0,\"SpawnRate\":0.5,\"Velocity\":0.5,\"Direction\":-90,\"JitterDirection\":10,\"JitterVelocity\":0.1,\"JitterX\":5,\"JitterY\":5,\"StopEmittingAfter\":null,\"__type\":\"ParticleEmitterPoint\"},\"Effectors\":[{\"Strength\":0.005,\"FrequencyAlphaX\":20,\"FrequencyAlphaY\":20,\"FrequencyBetaX\":10,\"FrequencyBetaY\":10,\"AgeFactor\":0.5,\"__type\":\"ParticleWave\"},{\"Gravity\":0.002,\"GravityDirection\":180,\"__type\":\"ParticleGravity\"},{\"StartColor\":\"#FFFF00\",\"EndColor\":\"#FF0000\",\"__type\":\"ParticleColor\"},{\"ParticleStartSize\":4,\"ParticleStartAgeSizeChange\":0,\"ParticleEndSize\":6,\"__type\":\"ParticleSize\"},{\"ParticleStartOpacity\":1,\"ParticleStartAgeOpacityChange\":0,\"ParticleEndOpacity\":0,\"__type\":\"ParticleOpacity\"}]}]}", "maps": [{ "x": -1, "y": -1, "zone": "In House", "data": "{\"Background\":\"2-9593lcKb97lcMbNbTb6Nb91lcSb8Tb91lcSb8Tb91lcSb8Tb\",\"Objects\":{},\"StoredMonsters\":[],\"StoredNPC\":[{\"Name\":\"Janet Grimtongue\",\"X\":3135,\"Y\":3113}],\"Houses\":[],\"MapActions\":[{\"X\":2991,\"Y\":3078,\"Size\":1,\"Actions\":[{\"Values\":[\"2222\",\"997\",\"Cave\"],\"Name\":\"Teleport\"}],\"Conditions\":[]}],\"Chests\":[]}" }, { "x": -1, "y": 0, "zone": "Base", "data": "{\"Background\":\"2-hapa2hapahapahapa4ha2pa2hapa3ha2paha3pa2ha13pa2halacaRajbRajbRajbRajbRajbRa3jbRa2jb4RajbRa3jb2Ra2jb3Ragahapa5hapaha3pa3hafaoa3jbpaha2pahapaha2paha4pahapa3ha4pahapahapaha3paha4paha5pa2hapaia3Ra2jbRa3jb6RajbRajbRa2jb3Ra2jb3Ra2jb2Ramadaha5pa6hafanaoaRa2jbRaha4pa4ha2pa3hapaha2pa3ha4pa2hapahapa2ha4paha2pahapa4haia2jb4RajbRajbRa2jb4RajbRajbRajb2RajbRa2jbRa2jbRa3jbmadapaha2pa3hapahapafaoa3jbRajbRaha2pahapa2ha5pa2ha2pahapaha3pa7hapa2hapa5hapaha5palaca2Rajb2Ra2jb4Rajb2Rajb3Ra3jb2Ra2jbRajbRajb3Ra2jbmadapaha2pahapahafanaoa2jb3Ra2jb3pa2hapaha2paha3pa2ha2paha3pafanada2paha2pahapahapa2ha2pa2ha2pahapaha2paia2Rajb2Ra2jb5Rajb4Ra2jb3Ra3jb2Ra2jbRa2jb2Rajbmanada2pahafanaoajb3Ra4jbRapa2ha2pa3ha2pahapa2hapa2hapafa2naoajbmanadahapaha3paha3pa2hapaha2pahapahapaiajb2RajbRajbRajbRa4jbRajb3RajbRajbRajb3Rajb3Rajb6Rama3naoa4jb3RajbRa2jbpahapahapa3hapa2ha2pahapahafanaoa3jbRajbRamanada3ha6paha2pahapaha2pahalacaRajbRa4jb2Rajb7Rajb2Rajb2Ra3jbRajbRajb2Ra3jbRajbRajbRajbRajb4Rajb4Rapa2ha2pa6ha2pahapafaoa2jb5Rajb2Ramadapa2hapa3hapa2ha2pahapa3hapaia2Rajb2Ra2jb6RajbRa2jbRa3jb5RajbRa7jbRajb5Ra2jb5Rajb2Ra4paha3pa3ha3pafaoaRa2jb4Ra2jbRajbRagaha3pa4ha2pahapaha3pahapaiajb3Ra3jbRa6jb2Ra2jbRajb9Ra3jbRajbRa8jb2Ra2jbRajb3Rapa2ha2pa6ha2pafaoa2jbRa3jb3Ra3jbRamada3hapahapa5hapaha2pa2haiajbRajbRajbRajbRajb5RajbRajb2Ra2jbRa2jb3RajbRajb2Ra3jbRajb2Rajb2Rajb2RajbRa2jb2RaDc6paha3pa2hafaoa5jbRa3jbRa2jbRajbRagapaha2paha5paha2paha3paiaRajbRajb2Ra2jb2Rajb2Rajb2Ra6jb2Ra3jbRajbRajbRa2jbRajbRa3jbRajb2Ra5jb2RaKc2pa2hapa3ha3pahaia2Ra2jbRa4jbRajb3RajbRamada2paha5pa2hapa2ha2pahaiajb4Ra2jbRa2jbRajb2Rajb2RajbRa2jbRajbRa5jb3Ra2jb4Rajb4Rajb2Ra3jbDcJcBc2pa2hapaha2pa3hafaoajbRa3jb3Ra6jbRa2jbga3pa2ha3pa5hapa2haiajb4Ra2jb2Ra4jb2RajbRajb2Ra4jbRa2jbRa3jbRa2jbRajb6Ra2jbRaHc3JcBc2Rapahapaha3paha2pafaoajbRajb2RajbRajb2Ra5jbRa2jbmada2pa6hapa3ha2pahaia5Ra3jb4Rajb3Ra3jbRajb2Ra3jb3Ra2jb3Ra3jb2RajbRa3jbRa2jb2RajbRajbpahapahapa2hapahapaia2jbRajb4RajbRajb4RajbRa2jbRaga4pa2hapaha2pa4hapaiaRa2jbRajbRajb2Ra4jbRajb2Rajb4Rajb3Rajb2RajbRa2jbRajb5Ra2jb3Rajb2Ra3jbRaha3pahapaha2pafaoajb2Ra3jb8Rajb2Ra2jbRamadaha3paha3pahapaha3paiajb2Ra3jbRa2jbRa2jb2Rajb3Ra3jb2Ra2jb5Rajb3Ra3jbRajbRajb4Ra5jb2Rapahapahapaha2pafaoa2jbRa3jbRa2jb3RajbRa2jbRa2jbRajbRagaha2pahapaha2paha4pahaiajb2Ra2jb3Ra3jbRa2jb2Rajb8RajbRa3jbRajbRajbRa2jbRa2jbRa2jbRajb5RajbRaha2paha4paia4jb4Rajb3Rajb2Rajb2Ra2jbRa2jbmadaha3pahapaha5pahaiajbRa3jbRajb2RajbRa4jbRa4jb3Ra2jb4Rajb2Ra3jb2RajbRajb4Ra3jbRajb3Rapahapa3hapafaoaRajb2Rajb2Ra2jb5Ra4jb3RajbRajbgapaha5pahapa3hapaiajb3Rajb2Ra2jbRajbRa2jb3RajbRa2jbRajbRajbRajb2Ra3jb3RajbRajb2Ra4jbRa4jb2Rajbhapahapa2hafaoa2jbRa3jbRajbRa3jb2Ra2jb2Ra2jbRajbRajbRamadapahapaha2pa4hapahaiajb4Ra6jbRajbRa3jb2Ra2jb3Ra2jb2Rajb3Ra2jbRa3jb2Rajb2Ra3jbRa4jbRa3hapahafaoa2jb2Ra2jbRa2jbRa4jbRa3jbRajb2RajbRajbRajbgapa3hapa2ha2pa2hafaoa2jb4RajbRa2jbRajbRa3jbRajbRajbRajb4RajbRajb2Ra3jbRa2jb2Rajb2Ra4jb2Ra4jb3hapafaoajb2Ra3jbRajbRajb3Ra4jbRa2jb3Ra2jb3Ramada3hapahapahapa2haia4RajbRajb2Rajb3Ra2jbRajb3Rajb2Ra2jb4Ra3jbRajb4Ra3jbRa3jb4Ra4jb3pahaiajbRajb2Rajb2Ra2jbRa8jb5Rajb3Ra2jbmadapa2hapa3hapafaoajbRa2jb9Rajb2Ra3jb2Ra2jbRa2jbRa2jbRa5jb4RajbRa2jb2RajbRa2jb2Ra2jb3pafaoaRa2jb2Ra3jbRa7jbRa2jbRa3jbRa2jb2Ra3jbmadahapahapa2hapaiajb2RajbRa2jb2Rajb3RajbRa2jb3RajbRajb2Ra2jb4Ra2jbRa6jb2Ra3jbRa4jb2RajbRapafanaoajbRa2jb6RajbRajbRajbRa5jb2Ra2jb2Ra5jbRamadapahapahafanaoa2jb4Rajb2RajbRajb8Ra6jbRa2jb2Ra5jbRajbRa2jb6Ra2jbRa3jbRafaoa2jbRa4jbRa6jb2RajbRajb2RajbRa2jbRa4jb2Ra2jbRajbma4naoaRa5jbRajb3Ra2jb2Ra2jbRa3jbRa5jb2Rajb2Ra5jbRa2jbRa2jbaa4bacaRajb3RajbRaoa2jbRajb6Rajb2RajbRa4jb2RajbRa2jb5Rajb4Ra2jb2Ra4jbRajb3Ra2jbRajbRa3jbRa2jb2Rajb6RajbRa2jbRajbRajbRa2jbRajb3Raaabajahapa2hala3baca2jbRajb3Rajb2Ra4jbRa2jbRajb3RajbRa5jb2Rajb2Rajb2RajbRajb2RajbRajb3Ra4jb3RajbRajbRa2jb8Rajb2Ra2jb2RajbRajbRa4jb3Raaaja3ha4pahapahala2bacajbRa2jb6RajbRajbRa5jb5Ra2jbRa4jb4Ra2jb2Rajb2Rajb2Ra2jbRajb8RajbRa3jb2Ra3jb4Rajb3Rajb2Rajb3Rajbaajahapa4ha2pa2hapa3hala2Ra2jb3RajbRajb2Ra2jbPa6XaNa2jb2Ra2jb6Ra4jbRa4jb2RajbRajbRajb6Rajb2Ra2jbRajbRajb2RajbRajbRajb2Rajb5Ra2jbRaga2hapahapa4hapahapaha3pa5RajbRa2jbRa3jbPaYa6ZaWaNaRajb4RajbRajb4Rajb3Ra4jbRajbRa6jbRajbRa2jbRa2jb2RajbRa2jbRa2jbRajbRa4jb2Ra3jbaajahapa2ha2pa4hapa2ha3pajb2Ra3jbRa2jbRajbRaPaYa8ZaWaNajb2Ra2jb2RajbRajbRajbRajbRa3jb2Ra5jb3Rajb5Rajb2Ra2jb2RajbRa2jbRa5jbRajbRa3jbRaga4ha3pa3hapahapahapahapa2jb7Ra2jbPaYa10ZaQa8RajbRa4jb2Ra2jb2Ra5jb6Ra3jb6Rajb2RajbRa3jb4Ra2jb4Raga2pa2ha2pa5hapahapaha2pa2Ra2jb3Ra3jbPaYa11ZaWaNa4Ra3jb3Ra2jbRa3jbRajb2RajbRajb4Ra4jb3Ra2jb3Ra2jb4Ra2jbRajbRajb2RajbRa2jbga2hapaha3pa2ha2pa3ha2pahaRa2jb2Ra2jb2RaPaYa13ZaQa7jbRa2jb2Ra3jb5Rajb2Ra2jbRa3jb3RajbRa6jb2Ra4jbRajb2Ra2jb2Ra2jbRagapa2hapa4ha2paha4pahapa2Ra3jb3RajbSa14ZaQaRajb5Rajb3Rajb2Ra2jb4Ra3jbRajb4RajbRa3jbRajbRajbRajbRa4jb2Ra2jb6Ra2jbmada2hapa2ha2pa4ha5pajbRa3jbRajbRajbSa14ZaQa3jb5Rajb3Rajb3Ra3jbRa3jb3Ra2jbRa4jb2RajbRa2jbRa4jbRa4jbRa5jbRa2jbgaha2pa2ha3pahapahapa3hapa2jbRajb4RajbSa14ZaQajb2Ra2jb2Rajb2Rajb2Ra2jb3Rajb2Rajb7Ra2jbRa3jb4Ra3jbRa3jbRajbRa4jb2Ra2jbRamada4hapaha2paha2paha2paha5Ra3jbRaSa14ZaQajbRa3jbRajb2Ra2jbRa2jb4Ra2jb4Rajb4RajbRa3jbRa3jb2RajbRa3jb3Ra2jb2Ra3jbRajb2Raga3hapa4hapa3ha3pa3jb3Ra2jbRaSa14ZaQa3Rajb3Ra2jb3RajbRajbRajbRa5jbRajb3Rajb8Rajb2Ra2jb5Rajb3Ra2jb6Ramada3hapa2hapaha2pa4haRajb3Rajb2RajbSa14ZaQaRajb6Ra3jbRa2jbRa3jb4Ra4jbRa2jb2Ra2jb6Ra2jbRajb2Ra6jb2RajbRa4jbRamada3paha2pa4ha2pahajbRa2jb4RajbVaMa12ZaKaTa2RajbRajbRa2jbRajbRajbRa2jb4Ra5jb2Rajb2RajbRa3jbRa4jbRajb2Ra3jb7Ra3jb5Ramadahapahapaha3pa2ha2pajbRajb3RajbRajbRaVaLaMa8ZaKaLaTa2Ra2jb7RajbRa2jb3RajbRa5jb2RajbRajb2Ra3jbRajbRa2jbRa2jb2Ra2jbRa3jb3RajbRajbRajbRajbRajbgapaha2pa3ha3pahapa2RajbRajbRajbRa4jbVa8LaTa2Ra2jb3Ra4jbRa4jb2Ra2jb5Rajb8Ra4jb3Ra4jbRa2jb5Ra2jbRa2jb5RajbRamada2ha2paha3paha2pa3Ra2jbRa4jbRajbRa2jb2Ra3jb2Ra3jb2Ra4jbRa2jb5Ra3jb2Rajb3Ra2jbRa2jbRa3jbRajb2Ra3jb3Rajb6RajbRa2jb2Rajb2Ra2jb3Ramadahapa4ha4pa2Rajb3Ra2jb3Ra2jbRajb11Ra3jbRajb2Rajb2Ra4jb5Ra2jbRa8jb2Ra2jbRa3jb2Ra4jbRajbRajbRajbRa3jbRajbRajbRa2jbRajbmadahapahapa2ha2paha2RajbRajbRa3jb2Ra2jb3Rajb9Ra2jb2RajbRajbRajbRajb6Ra2jbRajbRajbRa2jbRa2jb3Ra2jbRajb2RajbRajbRajbRajbRa2jb2Ra9jbRa2jbRajbmada2hapa2ha2pahaRajb5RajbRa5jb3Ra2jb3Rajb3Ra2jbRajbRa8jb3RajbRajb2Ra3jbRajb3Rajb3Rajb2Ra2jbRajb6Rajb3Rajb2Ra2jb3Ra3jb2RajbRamada5pahapa11RajbRajb2Ra2jb6RajbRa5jb2Ra2jb3Ra2jbRa10jbRajb4Ra2jbRajbRajbRa3jb2Ra2jb2Ra2jbRa3jb2Ra5jbRa5jbmanadahapahapahaRa5jbRa3jbRa2jbRajb3Rajb2Ra2jbRa5jb4Ra3jb3Ra3jbRa6jbRa4jb3RajbRajbRa10jbRa3jbRa3jb2Ra7jbRajb4Ramada4haRa4jb6RajbRajb2RajbRajbRa2jb3Ra2jb2Ra2jbRajb2RajbRa2jb2Ra2jb2Rajb3RajbRa6jb2Rajb2Ra6jbRa4jbRa3jb2Ra4jbRa2jb3Ra2jb2Ra2jbmada2pahajb2RajbRa4jbRa5jb3RajbRajb2RajbRajb2Ra2jbRa4jbRa3jb4RajbRa3jbRa2jbRajb3Ra2jb2Rajb2Ra3jb3Ra2jbPa6XaNaRajb4Rajb2Ra2jbRa3jbRajbmanadapaRajb5RajbRajb3Ra4jbRajb2Ra4jbRa2jb2Ra10jb8Ra2jbRa3jb2Ra3jbRajbRajbRa3jb4RaSa6ZaWaXaNa2Ra3jb3RajbRa3jb4Ramana3Rajb3RajbRajbRa2jb5Rajb2Rajb2Rajb2Ra5jbRa2jb4Ra2jbRajb3RajbRajbRa4jbRajbRa4jbRa6jbRajbPaYa8ZaWaNaRa2jb7Rajb2Rajb4Ra3jbRajb5Ra4jbRajbRajb2RajbRa4jb2Ra3jbRajb4Rajb2Ra2jbRa3jb2RajbRa7jbRa4jbRajb3Ra2jbRaSa10ZaWaNaRa2jbRa3jbRa2jbRajb2RajbRa2jb3RajbRajbRa4jbRa7jbRa3jb2Rajb3Ra2jb2RajbRajb2Ra3jbRa2jbRajb2RajbRa2jb3RajbRa4jbRajbRa3jb2RaSa11ZaWaNaRa2jb8RajbRajbRajbRajbRajbRa2jbRa2jb2RajbRajbRa2jb3Ra4jbRa3jb2Rajb3Rajb2Ra4jb3Rajb2Rajb2Rajb2RajbRajb2Ra4jbRajb2RajbRajbSa12ZaQaRa4jbRajb2Ra2jbRajbRajbRa7jbRajbRajb2Rajb3Ra5jbRa3jbRa2jb2RajbRa2jb3RajbRa2jb5Rajb4Rajb2Rajb3RajbRajbRajbRa2jb2RajbVaMa11ZaWaNa2jbRa3jb3Rajb2Ra2jbRajbRa2jbRa5jb5Ra2jbRajb2RajbRajbRa5jbRa2jbRajbRajbRajb2RajbRajbRajb6Rajb2Ra4jbRajb2Ra2jb3RajbRajbSa12ZaQa3Ra5jb4Ra2jbRa2jb2Ra3jb3Ra4jb3RajbRa4jb2RajbRajbRa4jbRajb2Rajb3RajbRa2jbRajbRa3jbRajb2Ra2jb8Ra3jb3RaSa12ZaQa3Ra7jb2Ra7jbRajb4Rajb2Ra3jb2Rajb2Ra2jbRajbRajb3Ra2jb2Rajb3RajbRa2jb4Ra2jbRajb2RajbRa2jbRa2jbRa2jb2Ra3jbRa3jbVaMa11ZaWaNajbRa3jb5Ra2jb5Rajb6Ra2jbRajb2RajbRajbRajb3Rajb2Ra2jb3RajbRajbRajb3RajbRajbRajbRa2jbRa6jb2Ra2jb3Ra3jb2Rajb4RaSa12ZaQa2RajbRajb6RajbRa3jb5Ra4jb6RajbRajbRa2jbRajbRa5jb3Rajb2Ra3jbRajbRa2jb4Rajb3Ra7jb6RajbRa2jb2RaVaMa11ZaQajbRa2jb4Ra2jb2Rajb2Ra2jbRa2jbRa2jb5RajbRajbRa2jbRa5jbRa3jbRajb2Ra2jbRa4jbRa4jbRa4jb2Rajb2Ra2jbRa2jb3RajbRajb2Ra2jb2RaSa11ZaQajbRa3jb4RajbRajbRa4jbRajb4Ra2jbRa4jbRajb2Ra2jbRa2jbRa4jb2Rajb2Ra2jb2Ra2jbRajbRa2jb2RajbRa2jbRa7jb3Ra2jb2RajbRajb2RajbVaMa9ZaKaTajbRa2jbRajbRa6jb2Ra2jbRajbRa4jbRa2jbRajb4Rajb3Ra2jb4RajbRa2jb3RajbRaaa3baca3Ra3jbRa2jbRa2jbRa2jbRajbRa4jbRajb4Rajb2RaSa9ZaQa2jb4Rajb2RajbRajbRajbRa2jb5Ra2jbRa5jb3Rajb2Rajb3RajbRajb3Rajbaa5baja3pala5baca2RajbRajb4Ra2jb2RajbRajbRajbRajb2Ra3jbVaMa8ZaQajb2Rajb2Ra2jb3Ra2jb2Rajb3Ra2jb2Ra2jbRa3jb4Ra2jb2Ra5jbRajbRaaabajahapa2ha2pahapa4ha3palabacajbRajbRa3jb2Rajb3Ra2jb4Ra2jbRajbRaSa7ZaKaTajbRajbRa4jbRa4jbRajbRa2jbRa2jb2Rajb6Ra3jbRajb6Ra3jbaajaha2pahapa2ha2pa4ha2paha2pahalaca2Rajb4RajbRa3jb2Ra3jbRajbRajb2RaVaMa6ZaQa2Rajb3Rajb3Ra2jbRa3jb4Ra3jb2RajbRa2jb2Ra2jb7Rajb2Rajbaaja2pa3hapa3ha2pa2hapahapa3ha2palacajb3RajbRa2jb2Rajb3Ra6jbRajbRaVaMa4ZaKaTa2Ra2jbRajb3Ra3jb2Ra3jbRajb3Ra2jb2Ra3jb2Ra2jb2Ra4jb2RajbRaaaja5pahapaha2pahapaha7pahapahaia2jbRa3jbRa2jb3Ra2jb2Rajb7RaVa4LaTajbRa2jbRa2jbRa2jb4RajbRajbRa3jb2RajbRa2jbRajb2Rajb3RajbRajb3Ra2jbRagapa2ha5pa2ha2paha3pahapahapaha3paiaRajb2Ra3jb4Ra3jbRa2jbRajb2Ra3jb2Ra2jbRa2jb3RajbRajbRajb8Rajb2Ra4jbRajbRajbRa3jbRa5jb2Rajb2Rajbga2pa4ha2pahapahapahapa2hapaha3pa2hapaiaRa2jbRa3jbRajbRajbRajbRajbRa4jb2Ra3jbRajb4Ra2jb2Ra2jb5Ra6jbRa2jb2Ra2jbRa2jb4RajbRa7jbRa2jbga4pa4hapa6hapaha2pahapahapahaia2jb2RajbRa2jb3Ra2jbRajbRa2jbRajb2Ra2jb7Rajb4RajbRajbRajb2Ra3jbaaRa2jb4RajbRajbRajb2RajbRajbRajbRa5jbRajbgapa2hapahapahapa10ha2paha2pahaia3RajbRajbRajbRa8jb2Ra2jb2Rajb4Ra3jbRajb2Rajb2Ra2jbRajb4Raga2jb5Ra2jbRajb2RajbRa2jb4Rajb3Ra2jbga3pa3ha4pa3hapa2ha2paha2pahapafaoaRa5jbRajb4RajbRa5jbRa2jbRajbRa2jb2RajbRajbRa2jbRa2jb2Ra4jbRajbgajbRajbPa3XaNaRa2jbRa3jbRajb3Ra5jbRajbgahapaha2pa2hapa2ha2paha2pahapa2ha3pahaiajbRa3jbRa2jbRa4jbRajb2Rajb2Ra2jbRa2jbRa3jbRajb3Ra2jb2RajbRajb3Ra2jbRagaRaPaXaYa3ZaWaNajb3Rajb3RajbRa4jbRajbRajbmada5paha2paha6paha2paha2pafaoaRa2jb3Ra2jbRajbRa2jbRa3jbRajb2Ra2jbRajb2RajbRajb2Ra4jbRajbRa3jbRa2jbRajbgaXaYa6ZaQa5RajbRajbRa2jb7Rajbga5hapa6ha2pa4hapa2haiaRajbRa7jb2Ra2jbRajb3Ra3jb4Ra2jbRajb2Ra2jb2Rajb3Ra2jb2RajbRajbRaga8ZaQa7jbRa2jb3Ra4jbRajbmadahapa6ha5pahapa3hapafaoa3jb2Ra4jb2Rajb7Ra2jb2Ra2jb4Ra2jbRa2jb2Ra2jbRajb5Ra3jbga8ZaQajbRa2jb3Ra2jb10Rajbmanada2pa4ha2pa2hapa3hapafanaoa4Ra3jb3RajbRajbRa2jb3Ra2jb2RajbRajbRa2jbRa3jbRa2jbRajbRajb3RajbRajbRajbRaga8ZaQaRa2jb3Ra3jb4RajbRa3jb2Ra2jbma3nadapa2ha3pahapahafanaoajb2Ra5jb2RajbRa7jbRajb5Ra2jbRa4jbRajbRa3jb3RajbRa2jbRa3jbRama8ZaQa2Ra3jb2RajbRajb2RajbRa2jb2Ra2jbRajbRajb2Rama9naoaRa2jbRa4jbRa3jbRajb4Ra2jb2Ra2jb2RajbRa3jb2RajbRajb5Ra3jb5RajbRajbRajb7ZaKaTaRajb2Ra3jbRajbRa2jb3Ra6jb2Ra3jbRa2jb2RajbRa2jb5Rajb3Ra3jbRa6jbRa2jbRajbRa2jb4Rajb2Ra6jbRajbRajbRa3jb2Ra2jbRa2jbRa6ZaKaTa2jbRajbRa3jb4Ra2jb2Rajb3Ra4jbRajbRa2jbRa4jbRa2jbRajbRa3jbRa2jbRajb2Ra2jbRa2jb2Ra3jbRajb2Ra3jb2RajbRa4jb7Ra5jbRajb3Ra5ZaKaTa2jbRajb2Ra7jb3Ra3jb4Ra4jbRajbRajb3Ra2jbRajb3Ra3jb2Rajb3Rajb2Rajb3Ra2jbRa3jbRa4jbRa3jb2RajbRa4jb2RajbRa4jbRajb3Ra4ZaKaTa2Ra3jb3RajbRajbRa3jbRajbRajb3Ra2jbRajbRajbRajb2Ra4jb7Rajb3RajbRa3jb2Ra2jbRa5jbRajbRa2jb2RajbRajbRajbRa2jbRajb2RajbRa7jb2RajbRa2ZaKaLaTa2Rajb4Ra2jbRajb2Rajb2Rajb2Ra2jbRa2jbRa3jb2Rajb2Rajb6Ra3jbRa2jb2Rajb2Rajb2Ra2jb4Rajb2Rajb4Ra7jbRajb7Rajb2Rajb2Ra4jbRa2LaTaRajb3Ra2jbRajbRajbRajb7Ra2jb2Ra2jb2Rajb2Ra3jb2Rajb2Ra2jbRajb2Rajb3Ra4jb4Rajb3RajbRa2jb3Ra4jb3Rajb9Rajb5Ra4jbRajb2Ra2jb2RajbRajbRa2jb2Ra7jbRajbRajb3Rajb3Ra7jbRajb3Rajb2Ra5jbRa3jb3Rajb6RajbRajbRa7jb6Rajb5RajbRa4jb2Rajb2RajbRajb2Ra2jb2RajbRajbRajb2Ra3jb3Ra2jbRajbRajbRa5jbRa5jbRajb5Ra4jb5RajbRajbRajb2Rajb5Ra3jb4Ra2jb6RajbRa2jbRajbRajbRajb3RajbRajbRa2jbRajb2Rajb5Rajb2Rajb2Rajb2RajbRajbRa4jbRa3jb2Ra4jb2Ra2jbRa6jbRajb4Ra2jbRa4jb3RajbRa2jbRajbRa3jb3Ra2jb4Ra2jbRa2jbRa3jb5Rajb2RajbRajbRajb2RajbRa5jbRa3jb2Rajb3Ra4jb3Rajb2Rajb2RajbRa4jbRa2jbRa2jbRajbRa2jbRajb2Rajb2Rajb3RajbRajbRajb2Rajb3Rajb3RajbRa2jb2RajbRa4jb2Ra5jb2Ra2jb2Rajb2Ra4jbRajbRa3jbRajb2Ra2jb2Ra4jb5Rajb3Rajb2RajbRajb2Ra2jbRa3jbRa2jbRajbRa2jb3Ra3jbRa3jb3RajbRajb2Ra3jb2Rajb2RajbRajbRa4jbRajb2Ra2jb2Ra4jbRa5jb2RajbRajbRa2jbRa2jb5RajbRa2jb2RajbRajbRa4jbRajb3Ra2jb3RajbRajbRa6jbRa3jbRa2jb2Ra2jb2Ra2jb3Rajb11Ra3jb2Ra2jb3RajbRa4jbRajb2Ra2jb6Ra3jb3Ra4jbRa2jbRa2jb4Ra2jbRa2jbRajbRajb4Ra2jbRajbRa2jbRa4jb2Rajb3Ra3jbRa6jb2Ra4jb4Rajb2RajbRajb3Rajb2Rajb2RajbRajbRaaa3bacaRa3jbRa2jb2Ra3jbRa2jb3Ra2jb4Ra2jbRa2jbRa2jb5RajbRajbRajb2RajbRajbRajb3Rajb2RajbRa3jb2RajbRajb3Rajb2Rajb4Ra3jbRa3jbRajbRajb2Ra3jbRaaabajapa2halabaca3jb4Rajb5Ra3jbRa3jbRajb2Ra3jb3Rajb3Rajb2Rajb2Ra2jb3Ra2jb2Rajb4Ra5jb3Ra3jbRajb2Rajb6Ra2jb2Ra2jbRajbRajbRa2jbaabaja2hapa2hapahaiajbRajb7Ra2jb3Ra9jbRajbRajbRa2jbRajb4Rajb2Ra2jb7Ra3jbRa4jb4Ra4jb2Rajb2Ra4jb2Ra2jb3RajbRajbRajbRaaabaja2hapa3ha2pahalaca2Ra2jb3Rajb2RajbRajbRajb2Ra2jb2RajbRa4jb6Rajb4Ra4jb4Rajb2Ra5jbRajb2RajbRa2jb2Ra2jbRajb4RajbRa2jb2Ra\",\"Objects\":{\"mediumGrass_1\":\"xFabbaZhbQbayGaOcacfbAdaroaZdahWaleaRRaJeakjbAeaNmamfaWqaZeaaYanfaKkaEfafJasgaYNajgaIUaEgaQYaBgaigbtgaYjahhacmathaWOaphaaSaPgaJbbOhazWaCianabEiaShaNiaGVaijauPaxjaOgbIjaTiarkaJYapkaiTaJkadlaklaolaDlaXhaWlabhbYlaMJaImaWebCmaASaanawdaDoatjaxoabkaEoaEuakoaPPaloawTawoagdbnpaXcaEpadgaQpaeZaIpaTqafqaNxaCqanVabqaNZaCqafjbnqalgaarapiagrasEajsaeLacsayRaqsaBoaAsaXFadtaHTabtamaaAtaBDaXtaOMaLtaCXakuaxOaBvaGdaMvasMaNvaSNaFvaLPaLvaxHaNwafcaZxaGKaWxafXaCxakxaxyasDabyarRauyaNWasyaTvabzaGMazzavearAaBIalAaFKarAaFCaEAaEIaHAaIJazAaYqagBarwarBaAHajBaWIapBapZauBayfaqCaPyaXBaZjaJCafsaPCaxFaCCatJaWCaNVaICaHwapDaWGakDayLacDaNYavDaYvaPDarSaKDaFUaODahqabFamYaOEaOcbVEaMyaWFaLaaCGaqeawGayDawGaooaOGaheaQHaZyaCHaXCaAHaUDaFHarLarHaibbSHaBuavIayCaXHaiJabIaqjbUHadgacJaLlabJawBaCIaqlaxJafibCJaNbacKaNCaXJazHaYJaHiaxKaXBaQKagIawKaxhavLaboagLaLKaXKakibqLazyaDLaCAaWLalEaXLavGaULakHaRLaYoaHMaNHapMaLaaSMaGkalNauCaQMaQJanNaoeaINaLoavNadJaZNaeSaANaUgaWOaumalPaVJaWOahLaIOaBeasPazmazPaFJaxPaeMaNPajlaqQabrawQacIaUQaoTaKQaNhbCQagaaoRaPeaxRaKSaFRasdajSaqeaZRaCnaMRaHMafSarcbORaRHaQSavfbDSaDhbkTaPgbSTaaOaMUaiOaeVaBWaOUaPdbiVaGUawVaJWaNVamYaJVayfbpWaBhaLXaYjarYafsaTXaSSacYalfbbZafibOYaFfahZaWkavZaooamabigbjabIpaybbwqapbbIAaqbbaUarbbgfbxbbDoagcbqPaObbYzaFcbIZaqcbvgbpcbzpaidbOxaadbBEaldbVeaUdbksaOdbBIavdbwdapebMAaZeboOaLebnSaGebdTaKebaeazfbxtavfbyzaAfbNfbegbbbaTgbCraCgbuwaOgbkKajhbedbKhbFOaiibbPaXhbfcbpibfibThb\",\"mediumGrass_2\":\"DFanbaIQanbauUawbaNGaycaNKafcaMLapcauFaGcaTGaHcaEKaidatPawdalnameazRaVdayJaqeaeRaBeanJasfaFYavfajgbofaroaCfaKpaLfaOHaUfaiPaRfaKQaPfaFRaOfacoalgaAHaigaSJaHgayMaNgaBgbJgaOLamhapjbnharjaThaGfbThaBibRhahjbyhafVaxiaikabjanKanjafpahkaUebWjakGaElaILaelaZebAlaGhaUmaDOaTmaScbUmaTlaRnaNoaZnawqaHnaZfbeoaUuappatKahpayTaXoaGNaJpahOaTpaRhbTpaDcagqaqjatqaUpaWqaEVaYqaiXafratXaQqawYairavhaBravuaJravDaFraveajsartaUraCxassagUaZraQDaIsauNaPsaPOaJsaZxaptaYDaxtaTdaLtabtaRtaTzaiuaNQamuanLaBuabQaAuajwarvaGSalvagNadwagCaKwaFLatwamzaSwarEajxajFamxaWJaMxazTaJxaubaFyaXsauyajyaAyaoAatyaybadzaYVaVyaVXahzaNsavzaqUatzaRfavAaupatAaJOaeAamOaLAaUgahBaGuapBaKzayBayTahBayOaNBaIXaTBaKpaOCaIqaDCaAeaADajoazDaUraeDaLCadDangaHDanlaJDaEnaVDaquafEakvahEasXaNDawaaqEaTwaNEaEbbKEadMamFagNacFawoanGasraOGaeGaVGaSIaOGaNaaFHaRvaJHaBHavHaRabwHaWeaVHaqjaHIaWoaFJahxaGJavCarJaXNaqJaBcajKaKAaWJaEIaZJaHRaZJagdbZJacaaCKaDhbxKaQcagLafkacLaatadLaFibALaiaabMamqacMaZxaULalKaKLaBLaTLakOaVLaMkauMaGmalMaVbabNaKbbaNaMFaYNayRaINaKcaiOaJoanOaHEauOaBFayOaVGaxOagOahOaWOaZOablaQPajdbPPandbTPakhbZPaKbasRadlaGRaXJazRaribjRaIabRRacJaxSaAKaTSaYRahTaabbNTaPbauUaJGapUaJYaqUakdbkUawSarVaRabOVayhamWaWYaiWaamalXagHabXaRabdXaBbbNWadMauXaKKayYabLaZXauRamYawVaeYasZawYaEhbGYapqarZaGDawZanHafZaWIahZaPhbZZaiRaMabWIaqbblcbbbbytaIbbxHahcbdLaIbbNCatcbOMamcbxOamcbKOaFcbzVajcbBgagdbNkaadbSvaRcbOGagdbVgbjdbplaxdbvDaJdbnXaDdbehbzdbrRaEebyVajebqYalebribwebapaUebtEaCfbNUaNfbsXarfbnZaKfbvdaugbSDalgbfHavgbzZafgbicaPgbDiaVgbRFaDgbgWaHgbCibIgbbeaLhbjnaaibjxaUhbdHajibAYagibOZaWhb\",\"tree_1\":\"nOatbamabunaPraypaxKafwanvaxAasQapFaMibjIaluaeMagbacUavTalbbfPaJgbrWaPhbiWalbaTUaabaSTalcaiUaVdaJUaubafUaxbavSaRdaOSaFgaoUaJhanSaeiakSarjahTakkagUaLkakVaLlaPRaunaqRaBoauSaKpaFUavqaqWaCpaqXaeradXaLraEZadramYaVraEXaDtakZagsaTYaqralTanrakTaRnaVUaSmahQapjaIRaYlaPVaPbaqVaDbaHTaveatUalfaBWaMcaXUaPcadWaYeaUUaWgaNTaggaTTaQiaPVafjaSSahhatTaRhahWakkaJQaViaDRaXjadRaUfaLRaqgayRaXkafRaUjaHTallasVaJnarVaKoaVUaypakXagoaIXappaeXaOpabZaVoagabQpavXaxdahXaBba\",\"smallGrass_1\":\"hRaUbamKaTdaaPaUdaiibRdaIWaWeaUhbBeaIEaifajcbZfaGRaKgakebJgaHfbtgaOkaphaNYaWgaJebdhavkaThaqabMhaykaBiaEDapiamKariaOSaaiaAcbpiaKebsiayraYiahUaPjahjbsjaUDaakaLGapkarWafkaqfbekaknablakraplaRNarlaXTaelauXaDlaFkafmaaLaPmaHhbumaPnaznahGapnaffbinavraXnacIaXnaMJaEnaOLagoaVVafoaOXaPnavibSnaJkalpaPVahpalfbdpaoeaOpaofaXpaouaBpaAIaHpaIUaDpaiXaEpanSaCqaxUaeqaiBaIqaqFaNqaKeanraWuaxsarIamsatQawsakpaAsaRvaetaAXaQsalHahuarSaMtaefauuaMxaDuaPXaAuaoPadvaCCaJvaUIaKvaFTaZvaCBaxwaaNaEwaRbaixaSCaZwagPaZwaSGaYxayHagzadWaKyaLbamzaZIaAzaEDacAarIatAaZPaYAaliaABaWmaCBalAaABaUVanBaxxaaCalDaiCaLEalCabpasCaKEayCaqMaUCawWaGCakEaoDaTZaiDaWsaIDagIaIDaGMaLDasqatEaauaCEawEaMEaAbblEatEapFaxcbbFaOIaYFazZaRFagcbRFayeadHaaQaaHaxbbfHaRaawIaSBahIayabjIavcbpIaZsaBIaHAaDIaPAakJaBJalJahgbmJaaPacKaiHauKahDaALaGebhLaEbahMafhaYLaokaTLaBIaLLapgbILaMmaXMaRoacNawaaDNaHjazNaJzaKNatNaINaMfazOacwamOaCHaqOaWRasOaokaKOaIpaWOabJafPatKauPaQgbLPaJIawQaVSatQaufaAQaOmaRQasNaMQaSOaJRaGJafSaWXaVRaadbkSaLdaPSaKabQSaNbbMSaUcagTaPPaATacQaZSacqarUakIaiVaXjaVVamSaWVapPaiWatSarWahcbzWarJagXaUYaTWalLayXaOMarXaSPaIXaiebGXaShaqYaaEafYaUdbbYaAibcYaRpaTYakMaMYaLsauZasAahZaIBaqZaPCaJZayKamZaPRamZaOtanabfwaUZaXSaQZatgaGabfhaPabGwatabsPaCbbDgaGbbixaSbbmFaLbbvOaZbbVbbacbOfbicbqgaFcbNPaDcbUUaLcbmeaOcbfNatdbnSaVcbHoaGdbIpaCdbrvaudbwQaHdbjSavdbTZaSdbnhbUdbenamebmvavebHhbjebQqaPebawaafbNyaIfbwIaCfbxAaigbYLaegbsPamgbBSakgbITaqgbGWaxgbdcblgbTcbrgbJtaVgbUdbYgbRgakhbOIakhbHMahhbYaaThb\",\"tree_2\":\"qFazeaCNaLjaBqaNyaoIaEGaufbNHaLOaCMaBPasQaIgbERaDgblXakEaVYaJOaXcbNXaQqajYarqaqYairaJXasrasWagqahUatpaBVaFraBWaNradWazqanVaqqaNUaKqaBVaUqatUaHoarTakpaPSaSnaCTahoaKTaloaMTaOmaVSasmaPRaVmaoSaWlaySasnaISaDmawTaRkaOSapkavSaelaQRaEiaTSaZiaZRaykatSaujaWRashamSabgaOSaGfaRSaseaASafeaESaTeawTasdaqTaLcaoUadcagVagbaRVaoaavWauaaDVaKaa\",\"tree_4\":\"vPapmabHasBatUaIbbMAajdbmZaqmaWWaXjamYauhatXaDea\",\"tree_3\":\"HDajsaSAayAaKFaSAakYaVfaDVafeasWaKdalXaZgaXVaJhaYYaMkabXakmabXaMkaIYawmazYaznaHbbooa\",\"tombstone_1\":\"ldbTgaPebWga\",\"tombstone_2\":\"ldbuia\",\"tombstone_3\":\"Lebwia\"},\"StoredMonsters\":[],\"StoredNPC\":[],\"Houses\":[],\"MapActions\":[{\"X\":2916,\"Y\":405,\"Size\":2,\"Actions\":[{\"Values\":[\"Here lies the best years of my life\"],\"Name\":\"ShowMapMessage\"}],\"Conditions\":[]}],\"Chests\":[]}" }, { "x": -1, "y": 0, "zone": "In House", "data": "{\"Background\":\"2-91lcYb5Zb2TbZb97lc2Zb9801lc\",\"Objects\":{},\"StoredMonsters\":[],\"StoredNPC\":[],\"Houses\":[],\"MapActions\":[{\"X\":3137,\"Y\":55,\"Size\":1,\"Actions\":[{\"Values\":[\"343\",\"79\",\"Base\"],\"Name\":\"Teleport\"}],\"Conditions\":[]}],\"Chests\":[]}" }, { "x": 0, "y": -1, "zone": "Base", "data": "{\"Background\":\"2-Rajb2RajbRajbRajb4Ra2jb2Rajb3Ra2jbRa3jb2Ra2jbga10pa2haiajbRajbRajbRajbRajbRajbRajbSa8ZaWaNa3jb2Ra2jb5Rajb5RajbRajbma5naoa4jbRa2jbRajbRa2jbRa4jbRajb3Ra4jbRajbRajbRa3jbga4paha5pa2haiajb3Ra2jbRa3jb3RaSa9ZaQaRa2jb3Ra2jb2Ra2jbRa5jb6Ra2jb2Ra2jb2Ra4jb4Ra2jb3RajbRa2jb3Ra4jb2RajbRajbRaga4paha2pahapa3halaca2jb4RajbRajbRa2jbSa9ZaWaNaRa2jbRa2jbRa6jbRa2jb3RajbRajb2Ra3jbRajb2Ra2jbRajb2Ra5jb2Ra2jbRajbRa3jb7RajbRagapa5hapaha5paiajb2Rajb2Ra2jb4RaSa10ZaQa2jbRajbRajb3Ra3jbRajbRa2jbRajb2Ra4jb3Ra5jb2RajbRa2jbRa3jb2Ra2jbRa4jb2Ra2jbRa2jbRajbgapa2ha2pa2ha2pahapahapaia3Rajb2Ra2jb4RaVaMa9ZaQa2jb2Ra2jbRa2jb2Rajb2Ra3jb2Ra3jb3Ra4jbRajb2Ra2jb3Ra2jbRajb2Rajb2Ra2jbRa3jbRajb2RajbRa2jbgaha3pa2hapaha2pahapahaia2jb2RajbRajbRajbRa3jbSa9ZaQa3Rajb3Rajb6Ra4jbRa4jb3RajbRa3jbRajbRajb3Rajb2Ra2jbRajbRajbRa4jbRajbRajbRajb3Raga5paha2pahapaha2paiajb2RajbRa4jb2RajbRaVaMa8ZaQaRa3jbRajbRajb2Ra3jbRajbRajbRajbRajb4Rajb4RaNa2Ra2jb6Ra2jbRajb2Ra2jb5Rajb4RajbRagapa3hapa2ha2pahapa2halacajb2Rajb2Ra2jb5RaVaMa6ZaKaTa4RajbRa7jbRajb5Ra2jb5Rajb2RaWaNa2jbRa3jb3Ra5jbRa2jb4Ra2jbRajb3Rajbgapa4ha2pahapaha3pahaiaRajb3Ra3jbRa5jbVaMa4ZaKaTa8Ra3jbRajbRa8jb2Ra2jbRajb3RaZaQaRa2jb6Ra2jb2Ra2jbRa3jb3Ra3jbRa2jbRagahapahapa5hapaha2pahaia2jbRajbRajbRajbRajb5RaVa4LaTajbRa2jb3RajbRajb2Ra3jbRajb2Rajb2Rajb2RajbRa2jb2RajbZaQa4jbRa3jb3Ra6jbRa3jbRa2jbRajbRa2jbga2paha5paha2paha2paiajbRajbRajb2Ra2jb2Rajb2Rajb2Ra6jb2Ra3jbRajbRajbRa2jbRajbRa3jbRajb2Ra5jb2RajbZaQa2Rajb3Ra3jb4Ra2jbRa4jbRajb3RajbRajbRagapaha5pa2hapa2hapafaoa2jb4Ra2jbRa2jbRajb2Rajb2RajbRa2jbRajbRa5jb3Ra2jb4Rajb4Rajb2Ra6jbKaTa2RajbRa2jb5RajbRa3jb3Ra6jbRa3jbmadapa2ha3pa5hapaia2Rajb4Ra2jb2Ra4jb2RajbRajb2Ra4jbRa2jbRa3jbRa2jbRajb6Ra2jbRa2jbRajb3RaTaRajbRa3jbRa2jbRa2jbRajb2RajbRajb2Ra5jbRa2jb2Ragapa6hapa3hapaiaRajb5Ra3jb4Rajb3Ra3jbRajb2Ra3jb3Ra2jb3Ra3jb2RajbRa3jbRaaa2bacajbRa2jbRajbRajb2RajbRajbRa2jbRajb4RajbRajb4RajbRa2jb2Raga3pa2hapaha2pa2hafaoa2jbRa2jbRajbRajb2Ra4jbRajb2Rajb4Rajb3Rajb2RajbRa2jbRajb5Ra2jbRaaabaja2halabaca2Ra3jbRajbRa5jb2Ra3jb8Rajb2Ra2jbRajbmada3paha3pahapafaoa2jbRajb2Ra3jbRa2jbRa2jb2Rajb3Ra3jb2Ra2jb5Rajb3Ra3jbRajbRajbRaaajaha5palacajbRajbRajbRa6jbRa3jbRa2jb3RajbRa2jbRa2jbRajb2Ramadapahapaha2pafanaoa2jbRa2jb2Ra2jb3Ra3jbRa2jb2Rajb8RajbRa3jbRajbRajbRa2jbRa2jbRaaajahapa5hapalaRa2jbRa9jb4Rajb3Rajb2Rajb2Ra2jbRa4jbma6naoa4jbRa2jbRa3jbRajb2RajbRa4jbRa4jb3Ra2jb4Rajb2Ra3jb2RajbRajbaaja2ha3pahapa3hajbRajb3Ra2jb2Rajb2Rajb2Ra2jb5Ra4jb3RajbRajbRajbRa5jbRajb3RajbRajb3Rajb2Ra2jbRajbRa2jb3RajbRa2jbRajbRajbRajb2Ra3jb3RajbRajbaabaja3paha4pa2hapaRajbRajb2RajbRa2jbRa3jbRajbRa3jb2Ra2jb2Ra2jbRajbRajbRajbRajbRajbRa2jb4RajbRa2jb4Ra6jbRajbRa3jb2Ra2jb3Ra2jb2Rajb3Ra2jbRa2jbaajahapa2ha3paha4paha3RajbRajbRa2jb2Ra2jbRa2jbRa4jbRa3jbRajb2RajbRajbRa3jb3Rajb2Ra2jb2Ra4jb4RajbRa2jbRajbRa3jbRajbRajbRajb4RajbRajb2Ra3jbRajbaajahapa2ha4pa2ha4pa3Ra2jbRajb2Ra3jbRajbRajb3Ra4jbRa2jb3Ra2jb3Rajb4RajbRajbRajb7RajbRajb2Rajb3Ra2jbRajb3Rajb2Ra2jb4Ra3jbRajb2Raaaja3paha3pa4ha4pa3jb2RajbRajb2Rajb2Ra2jbRa8jb5Rajb3Ra5jb2Rajb3Ra4jbRa2jb9Rajb2Ra3jb2Ra2jbRa2jbRa2jbRa4jbaabaja2hapaha2pa2hapaha2pa2ha2pa4jb2Ra2jb2Ra3jbRa7jbRa2jbRa3jbRa2jb2Ra3jbRajbRajbRajb2Ra3jb2RajbRa2jb2Rajb3RajbRa2jb3RajbRajb2Ra2jb4Ra2jbaabaja4pa2ha3paha4pa2hapahajbRajbRajbRa2jb6RajbRajbRajbRa5jb2Ra2jb2Ra5jb2Ra2jbRajbRajbRa3jb4Rajb2RajbRajb8Ra6jbRa2jb2Raaabaja2pahapaha2pa6ha2paha3pahajbRa2jbRa4jbRa6jb2RajbRajb2RajbRa2jbRa4jb2Ra2jbRajb2Ra2jbRajbRa5jbRajb3Ra2jb2Ra2jbRa3jbRa5jb2Rajbaa2baja3paha2paha2pa3ha2pa2hapa3hapahaRa2jbRajb6Rajb2RajbRa4jb2RajbRa2jb5Rajb4Ra2jb2Ra4jbRajb3Ra2jbRajbRa3jbRa2jb2Rajb6RajbRajbaabajahapaha2pahapa3ha3pahapa2ha2pa3ha2pahajb3Rajb2Ra4jbRa2jbRajb3RajbRa5jb2Rajb2Rajb2RajbRajb2RajbRajb3Ra4jb3RajbRajbRa2jb8Rajb2Rajbaabajapahapaha4pa3hapa4ha4pahapaha4pajbRa2jb6RajbRajbRa5jb5Ra2jbRa4jb4Ra2jb2Rajb2Rajb2Ra2jbRajb8RajbRa3jb2Ra3jb2Raaajapa3hapa2hapa3hapahapahapa4ha2pa2hapa3hapa2Ra2jb3RajbRajb2Ra3jbRajbaa6bacaRa2jb6Ra4jbRa4jb2RajbRajbRajb6Rajb2Ra2jbRajbRajb2Rajbaajahapa2hapa5ha2pahapa2hapahapa4hapahapaha3pa5RajbRa2jbRa3jbaa3baja3ha2pahala2bacaRajbRajb4Rajb3Ra4jbRajbRa6jbRajbRa2jbRa2jb2RajbRa2jbaajapahapaha4pa2ha5pahapa2ha2pa4hapa2ha3pajb2Ra3jbRa2jbRajbaabaja4hapahapaha3pa2halaca2RajbRajbRajbRajbRa3jb2Ra5jb3Rajb5Rajb2Ra2jb2RajbRagapaha5pahapaha3pahapa4ha3pa3hapahapahapahapa2jb7Raaabaja2pa3ha2pa2ha3pa4halaca2RajbRa4jb2Ra2jb2Ra5jb6Ra3jb6RajbRaaajaha3pa4ha2pa4ha3pa2ha2pa5hapahapaha2pa2Ra2jb3Rajbaaja3paha4pa2hapaha3pa4halacajb3Ra2jbRa3jbRajb2RajbRajb4Ra4jb3Ra2jb3Ra2jbga3ha2pahapahapa2hapaha2pa3hapaha3pa2ha2pa3ha2pahaRa2jb2Ra2jbRagapahapa3hapa3ha3pa2ha6paiajbRa2jb2Ra3jb5Rajb2Ra2jbRa3jb3RajbRa6jbRaga4pahapa2ha2pa2ha2paha2pa2hapa4ha2paha4pahapa2Ra3jb2Raaajaha4paha2pa9hapa3halacajb3Rajb2Ra2jb4Ra3jbRajb4RajbRa3jbRajbRajbRajbRaga3pa2ha2pa6ha4pa2hapa2ha2pa4ha5pajbRa3jbRajbga2paha5pahapa3ha3paha3pa3haiaRajb3Rajb3Ra3jbRa3jb3Ra2jbRa4jb2RajbRa2jbRajbga2paha4paha5paha2pa2ha2pa2ha3pahapahapa3hapa2jbRajb3Raga3pahapahapa3hapa2hapahapahapa2ha2pahaiajb2Rajb2Ra2jb3Rajb2Rajb7Ra2jbRa3jb4Ra2jbgaha3pahapaha4pa2ha2pahapa5hapaha2paha2paha2paha5Ra2jbgaha4pahapa4ha2pahapaha2paha3pahalacaRa2jbRa2jb4Ra2jb4Rajb4RajbRa3jbRa3jb2Raaaja3pa3ha2pa2ha3pahapa2hapa3hapa4hapa3ha2pafa3jb3Rajbmadahapa2ha4pa2hapa3ha2pa3hapa3haiajb3RajbRajbRajbRa5jbRajb3Rajb8Rajb2Ragapa5hapa3ha2pa11hapa2hapaha2pa3haiaRajb3Rajb2Raga4hapahapaha2pa4ha2pahapa5haia3jbRa2jbRa3jb4Ra4jbRa2jb2Ra2jb6Rajbgahapa2ha6pa2hapaha4pa3ha3paha2pa4hapafaoajbRa2jb4Raga7paha3pahapa5hapahapahapalacajbRajbRa2jb4Ra5jb2Rajb2RajbRa3jbRa4jbRaga2ha3pa7ha3pa5ha2pahapahapaha3pafanaoa2jbRajb3RajbRamada2ha2paha2pa5hapa3ha2pa5haiaRajbRa2jb3RajbRa5jb2RajbRajb2Ra3jbRajbRa2jbRamada2ha2paha3pa3hapahapahapahapaha3paha2pa3hafaoajbRajb2RajbRajbRajbRajbga4pahapa2ha4pa2ha2pa3ha4paia4jb2Ra2jb5Rajb8Ra4jb3Ra3jbgaha2pa5ha2paha2pa5hapahapa3ha2pafanaoajbRa2jb3Ra2jbRa3jbmadapaha2pa2ha3pa2ha3pa2ha4pahapaia5Ra3jb2Rajb3Ra2jbRa2jbRa3jbRajb2Ra3jb2Ragapa6hapaha2pa2hapa2ha2pa3ha2pahafanaoa2Ra4jb2Rajb3Ra2jb2Ramadapahapa11ha3pahapa2haia2Ra4jb5Ra2jbRa8jb2Ra2jbRa3jb2Raga3pahapahapahapaha3pahapahapaha2pahapahafaoajbRajb2Ra2jb3RajbRajbRa3jb2Ramada3hapa9ha2pa2hapahapalacaRajb6Ra2jbRajbRajbRa2jbRa2jb3Ra2jbRajb2RajbRagahapahapaha2pa2ha9paha2pafanaoa3Rajb2Ra2jb2Rajb5RajbRa3jbgapa3ha2pa3hapa3ha2pahapaha3paia4jb3RajbRajb2Ra3jbRajb3Rajb3Rajb2Ra2jbRajbga5hapa3hapa2ha2pa3ha3pafaoajbRa7jbRajb11Rajbmada2ha2pa6hapaha5pa2hapaia3Ra2jbRa10jbRajb4Ra2jbRajbRajbRa2jbmadaha2pa2ha2paha3pa2ha5pafaoa4jb2RajbRajbRajb2Ra5jbRa3jbRa2jbmada3hapa2ha2paha5pa4hapaiajb3Ra3jbRa6jbRa4jb3RajbRajbRa6jbga3paha3paha3pa2ha5paiajbRajb4Ra2jb5Ra4jb6RajbRajbmadapahapaha2pa3ha2pa2ha2pahapahaiajbRa2jb2Ra2jb2Rajb3RajbRa6jb2Rajb2Ra5jbgaha4paha3pa2ha4pahapafaoa2Ra2jb2Ra6jbRajb2RajbRa4jbRa5jbmadahapahapa2hapahapa2ha2paha3paiaRa3jb4RajbRa3jbRa2jbRajb3Ra2jb2Rajb2Ra3jbRamada4pa2hapahapa2hapa4haia2Ra2jbRa3jbRajb3RajbRajb5RajbRajb3Ra3jbmadapa2ha4paha2pa2ha4paia5jb8Ra2jbRa3jb2Ra3jbRajbRajbRa3jbRaga7hapa6hapafaoa3RajbRa3jb5Rajb3Rajb3RajbRajbRa2jb4Ramanadahapa2hapa2ha5pahafaoa4Ra2jbRajb3RajbRajbRa4jbRajbRa4jbRa6jbmada3pa3hapa2ha3pahapaia7Rajb2Rajb4Ra3jbRajb5Ra4jbRajbRajbRamadaha4pa2ha3pahapaia3Rajb2Ra2jbRa3jb2RajbRa7jbRa4jbRajb3Ra2jbgapa3ha2pa2hapa2hapa2haiajbRa3jbRa2jbRajb2RajbRajbXaNa2RajbRajbRa4jbRa7jbmada2pa2hapa3ha2pahaiajbRajb2Ra3jbRa2jbRajb2RajbRa2jb3RajbRa4jbRajbRa3jbRagaha3paha2paha2paha2pahaia2jb8RajbRajbRajbZaWaXaNaRa2jbRa2jb2RajbRajbRa2jb3Ramanadapaha3pa2hapafaoaRajb2Ra4jb3Rajb2Rajb2Rajb2RajbRajb2Ra4jbRajb2RajbRamada2hapahapa3hapa3hapaia4jbRajb2Ra2jbRajbRajbRa3ZaWaXaNajbRajbRajb2Rajb3Ra5jbRamanadaha2pa2hafaoa2jb3RajbRa2jb5Rajb4Rajb2Rajb3RajbRajbRajbRa2jb2Rajbga2ha2paha3pahapa2hapalacajbRa3jb3Rajb2Ra2jbRa5ZaWaNa3jb5Ra2jbRajb2RajbRajbRama5naoajbRajbRajbRajb2RajbRajbRajb6Rajb2Ra4jbRajb2Ra2jb3RajbRaga2paha2pahapahapaha2pa2haia2Ra5jb4Ra2jbRa6ZaWaNa2Ra4jb3RajbRa4jb2RajbRajbRa4jbRajb2Rajb3RajbRa2jbRajbRa3jbRajb2Ra2jb8Ra3jb2Ragapahapaha3pa2hapa4haia2Ra7jb2Ra3jb7ZaWaNaRajb2Ra3jb2Rajb2Ra2jbRajbRajb3Ra2jb2Rajb3RajbRa2jb4Ra2jbRajb2RajbRa2jbRa2jbRa2jb2Ra3jbRa2jbgahapahapahapa2hapa2hapa2halacaRa3jb5Ra2jb2Ra8ZaQaRa2jbRajb2RajbRajbRajb3Rajb2Ra2jb3RajbRajbRajb3RajbRajbRajbRa2jbRa6jb2Ra2jb3Ra3jb2RajbRaaaja2hapa2ha3pa4ha3paiaRajbRajb6RajbRajb8ZaWaNajb6RajbRajbRa2jbRajbRa5jb3Rajb2Ra3jbRajbRa2jb4Rajb3Ra7jb6RajbRaaaja2ha3pa4hapa2hapaha2palaca2jb4Ra2jb2RajbRa9ZaQa4RajbRajbRa2jbRa5jbRa3jbRajb2Ra2jbRa4jbRa4jbRa4jb2Rajb2Ra2jbRa2jb3RajbRaaabaja2pa4hapahapaha4paha3paia3jb4RajbRajbRajb9ZaQajbRa4jbRajb2Ra2jbRa2jbRa4jb2Rajb2Ra2jb2Ra2jbRajbRa2jb2RajbRaaa15bajapahapa2ha4paha2pahapa2ha2pahapaia2jbRajbRa6jbRa9ZaQaRa2jbRajb4Rajb3Ra2jb4RajbRa2jb3RajbRajbRa2jb4Raaa3bajapaha2paha2pahapaha4pahapa4hapa2hapa4ha4paha3palaca2Rajb2RajbRajbRajbRa9ZaQa5jb3Rajb2Rajb3RajbRajb3Rajb2Ra3jbRa6jbaabajahapa2hapahapa4ha2pa2hapahapahapahapa2ha4pa4hapaha2pa2hapa2haia2Ra2jb3Ra2jb2Ra2LaMa4ZaKaLaTaRa3jb4Ra2jb2Ra5jbRajbRa3jbRajb2Ra2jbRajb2Raaaja5pahapahapaha3pa2hapa3ha2pa4ha2pahapa2hapahapa2hapa2ha2pahapaia4jbRa4jbRajbRajbVa4LaTajb6Ra3jbRajb6Ra4jb2Ra2jbRajb2Ra2jb2Raaaja2paha2pa5hapa4hapaha3pa2ha3pahapahapa3ha3pa2ha2pa3hapahalacajb3Ra2jbRa3jb4Ra3jb2RajbRa2jb2Ra2jb7Rajb2Rajb2Ra2jb3Rajb3Ra2jbRagapahapa3ha3pahapa3hapaha2pa2hapa3ha6pahapa2hapaha3pa4ha2pahaia3Ra3jb2Ra3jbRajb3Ra2jb2Ra3jb2Ra2jb2Ra4jb2RajbRa7jbRajbRa2jbRajbRaga6pahapaha3paha3paha2pa3ha2pa2hapa7ha2pa4hapaha2pahapaiaRa2jb4RajbRajbRa3jb2RajbRa2jbRajb2Rajb3RajbRajb3Ra2jb2Rajb2Ra5jb2Ra2jbRajbgapahapahapaha4pahapa2ha3pa4ha3paha2pahapa2ha3pa2ha2paha2pa3hapahaiaRajb8Rajb2Ra4jbRajbRajbRa3jbRa5jb2Rajb2RajbRa2jb4Ra2jbRajbRajbRajbgahapaha3pa2hapa2ha2paha3pahapahapahapahapaha4pa2ha3pahapa4ha2pa2hapaia5Ra6jbRa2jb2Ra2jbRa2jb4RajbRa7jbRa7jb4Rajb5Ragapaha2pahapahapaha3pa2hapaha2pa3ha2pahapaha2pahapa2ha2pa7hapa4haiaRajbRajb2Ra4jbRa2jb4RajbRajbRajb2RajbRajbRajbRa5jbRa3jb2RajbRajbRajb6Raga3ha2paha2pa5hapahapahapaha8pa2ha2pa2hapa4ha3pahapa2hapaiaRa2jbRajb4Ra3jb5Ra2jbRajb2RajbRa2jb4Rajb3Ra2jbRa3jb3Ra4jb3Rajbmada2paha2paha2pa2ha5pahapa4hapaha5paha2pahapaha2pa2hapahapaha2pahaiajb2Ra4jbRa3jbRajbRa4jbRa2jbRa3jbRajb3Ra5jbRajb2RajbRa2jb2Rajb2Ra2jbRa2jbgapa2ha3pa2hapaha3paha2paha4pahapa2hapa2ha2paha2paha3pahapa3ha2pahaiajbRajb3Ra2jbRajbRa3jbRajb2Ra2jb3Rajb3RajbRa4jbRajbRa2jbRa5jbRa2jbRa5jbmada2paha3pa2ha2pa3ha2pahapaha2paha3pahapa2ha2pahapa2hapahapa2ha4pahaiaRa3jbRa2jbRa2jbRajb3Ra2jbRajb5RajbRajbRa2jb7Ra2jb5Rajb6Ra2jbRaga2hapa2hapahapaha7pa2ha2pahapa3ha3pa4ha2pahapa2ha2pa2hapahaiaRa2jb2RajbRajb2Rajb3Ra2jbRajbRa7jbRa2jb3Ra4jbRa2jb2Rajb6Ra5jbRamada2ha6pa2ha4pa2hapa7ha2pa2ha2pa4ha2paha2pa2ha2paiajb5Ra4jbbacajbRajb2Ra3jbRa2jb3Ra2jb10RajbRajbRa2jb4Ra2jb2Rajb2Ramada3pa4ha3pa3hapahapaha2pa3ha2pa2hapahapaha2paha3paha2pahapahaia3RajbRajbRajbRajbpalacajbRajbRa2jbRa2jb3Ra3jb4RajbRa3jb2Ra2jb4Ra2jb2Ra3jbRajb2Ramadapa2ha5pa2hapaha7pahapa5ha2paha4pahapaha3pahafaoajbRa2jbRa3jbRajbhapalaca3jb4Ra3jb2RajbRajb2RajbRa2jb2Ra2jbRajbRajb4RajbRajb4Rajb2Ragapaha4paha3pahapa4ha2pa2ha2pa2hapaha3pa2hapahapa5hapaiajb5RajbRajbRajb3palaca2jbRajbRajb2Ra3jbRajbRa2jb3Ra6jb2Ra3jbRa2jb2RajbRa2jb3Ramadapa3ha3paha6paha2pahapaha2pa4hapa2ha6pahapahapaia3jb2Ra2jbRa2jbRa4haia2jbRa2jbRajbRa3jb4Ra2jb2Rajb3Ra4jbRajbRa2jbRa4jbRa2jbRajbRamadapaha2pahapa2ha2paha2pa2ha3pahapa2ha3pa2hapaha4pa4hafaoaRa5jbRajb3Ra3hapalacaRa2jbRajb2Ra7jb3Ra3jb4Ra4jbRajbRajb3Ra2jbRajb3Rajbmada2hapa3hapa2hapa3ha2paha3paha4paha3pa2hapaha4paiaRajbRa4jbRajb3Ra4pahaia2Ra3jb3RajbRajbRa3jbRajbRajb3Ra2jbRajbRajbRajb2Ra4jb7Rajbmadahapaha3pa2ha2paha5pahapaha2pa2hapahapahapaha2pahapahafaoaRa7jb2RajbRa2pahapafaoaRajb4Ra2jbRajb2Rajb2Rajb2Ra2jbRa2jbRa3jb2Rajb2Rajb6Ra3jbRa2jbmadapa2hapa2ha2pa4hapa2hapa4ha7pahapa3hafaoa2Rajb2Rajb2Ra4jbRa2pa2haia3Ra2jbRajbRajbRajb7Ra2jb2Ra2jb2Rajb2Ra3jb2Rajb2Ra2jbRajb2Rajb3Ramanadapa4hapa3hapaha2pa3ha4pa3hapa5hafaoa2Rajb5Ra4jbRajb2ha2paiaRajbRajbRa2jb2Ra7jbRajbRajb3Rajb3Ra7jbRajb3Rajb2Ra5jbRajbmada3hapa6hapahapaha7pa5hafanaoa4RajbRa4jb2Rajb2Rapahapafaoa2jb2RajbRajbRajb2Ra3jb3Ra2jbRajbRajbRa2jbPa4XaNa3jbRajb5Ra4jb4Ramadahapahapa2hapa5ha3pa4ha2pa2hafanaoaRajbRa2jbRajbRajbRajb3RajbRajbha2paiajb2Rajb5Rajb2Rajb2Rajb2RajbRajbRa3jbPaXaYa4ZaWaXaNajb2Ra2jbRa6jbRajb3Ramanadaha4pa3hapaha2pahapaha3pahafanaoajb4Ra2jbRa2jbRa3jb5RapahafaoaRajbRajb2RajbRa5jbRa3jb2Rajb3RajbPaYa8ZaWaXaNaRa4jbRa2jbRa2jbRajbRa2jbRamanadapa2hapa3hapahapahapa2hapafanaoajb3RajbRa2jb2RajbRa4jb2Ra3jbpafaoaRa2jb2Rajb2Ra4jbRajbRa3jbRajb2Ra2jbRaSa11ZaWaNajb2RajbRajb2Ra2jbRa3jbRa2jbRama2nada3ha3paha2pafa2naoajbRajb2Ra3jb2Rajb2RajbRajbRa4jbRajbhaia2jb2Ra4jbRa5jb2RajbRajbRa2jbRa2jbPaYa12ZaWaNa3jbRajb3Ra2jb3RajbRajbRa3jbma9naoaRa2jb2Ra2jb3Rajb11Ra3jbRafaoajb3RajbRa4jbRajb2Ra2jb6Ra3jbSa14ZaWaNa2jbRa2jbRajbRajb4Ra2jbRajbRa2jbRa4jb2Rajb3Ra3jbRa6jb2Ra4jb4Rajb2RajbRaoa3Rajb2Rajb2RajbRajbRa3jb3Ra3jbRa2jbRaSa15ZaQajbRa2jbRa2jb5RajbRajbRajb2RajbRajbRajb3Rajb2RajbRa3jb2RajbRajb3Rajb2Rajb4Ra3jbRa3jbRajbRajb2Ra3jb2Ra3jb4Ra4jb3RaSa15ZaWaNa3jb3Rajb3Rajb2Rajb2Ra2jb3Ra2jb2Rajb4Ra5jb3Ra3jbRajb2Rajb6Ra2jb2Ra2jbRajbRajbRa2jbRajb3Rajb2Rajb2RajbRajb3RaSa16ZaQaRajbRajbRa2jbRajb4Rajb2Ra2jb7Ra3jbRa4jb4Ra4jb2Rajb2Ra4jb2Ra2jb3RajbRajbRajbRasataua2Rajb3Ra2jbRajb3Ra2jbRaVaMa15ZaQa4jb6Rajb4Ra4jb4Rajb2Ra5jbRajb2RajbRa2jb2Ra2jbRajb4RajbRa2jb2Ra\",\"Objects\":{\"smallGrass_1\":\"QSapaaLeazbaMlaAdalnaEdaHraCdaXsaBdauHaldaWcaWdaQEabeaJRadeaoSaceaQdbUdaTgbOdaLdayeapsateaGYaKeavEaffaSGaafaFSaefaGdajgagWaKgaAebxgaRVaQgaWZajhaMLawiaGSakiadWaWiarbbijaAbaGjazjaMjabpaSjaaGanjaRIaCjakBankajpaZkauZaQkaEuaIlasMaDlanjacmaWvaAmaxJaBmaicawnaaratnahcafoameaTnaXtafoavCaRnaCaavoahbanoaigaKoaDuaFoacJawoaUSaEoapPaPoaBsavpauTaNpaouacqaVAatqafCanqaDMaeqaHjakraypaJqaGBaeraFQaPqalFaNsajHaitaELaFtanIaquawJaQtaxyaDuafaaUvaVLaJwaNNaowaeOapwavaaKxabdaZyaiNaKyaXvaRzapBatAaGibhAafFaZAavMaYAaDOabBaLKaEBaRNaBBaijbJBamOaTBaheauCaIeadDaiGaZCaMCaTDayNaQDajeaGEaBMaCEaGibmFanjbnFaUCaaGaQdbrGayyaMGalFabHaVdawHayabGHalCaqIaRGatIaxIaZHapKaxIaOdaFIaZzaWIaNkauJaKBakJapCaiJalGapJazjbCJacmaoKaFGaCKagibCKaNPadLakibnLaboacMaszaZLarDaaMaaEaQLaycbPLaLDaNMaNyaaNaYLadNaEMaiNaegbVMaOwaINaUebMNaNhaROaypacPautaHOaIiaeQaUnauQaGnayRaOoaJRaozasRaagaaSaPpaPSaHwaNSawkaBTaKkajTazuajTacvavTaMfbBTaAhbhTaUibaTaKbaITajfaHTagyaqUarvaeVahAaqVawjaVVaTyaXVaAfbYVaJcaHWaPraMWazdaYXagmaTXaRoaoYarebpYaNkamZavhbxZaqjbvZaxlanabIqaNZaScbvabMhafbbHfbabbVgbcbbfhbdbbTnaRbblCaccbxqaDcbtxazcbSwaZcbwzaTcbJfbrdbgdaEdbVhaOdbWyaGdbJgaueblkaeebcoacfbbGaNebFoaNfbXabwfbnealgbZkatgbmCaugbmGasgbfUalgbolaZgbffashbzJajhbrKaJhbINaohbSSaghbkYamhbfdaoib\",\"mediumGrass_2\":\"pUanaalYakaawoaibakZaYaatibcbaSUaybaCHapcaXcbncajdaOcaAhaPcaWiaadaqgbaeaXhbdeasdadfacVamfaDJahgafOaqgaNOaIgaqQaugaxZaIgaqqahhaadbNhaEdbxhaagbZhaIeaxiaKnaDiaaHaoiaCVapiaeeamjavabbjaUlackaLsaZjamGarkaJSagkaWbazlaGoallalLavlaHPaHlaCpaYlaDwacmaQGajmaDMaOlaKWalmakmaNmaWdaAnapuaCnaxKaqnaRsaOoaJBapoaxLamoaYjaRoaunaYoahqaipaxDajpaafaXpaNHavpaLQaLpaAwawqaZvahrahKaOqaBoaRravyaPraKOaFraoPaorasAamsabEassaeMawsaIeaFsaHyaDsaoJaOsaAfafuaaDaduapeaRvaAyaawaxMaEvafeanxaKHaIxanLaOxarGahyaoLaezaXFafAawBaXAaVDaRAaZNaTAaAeaFDatfbJDaljbEDaqebIEaPOamFachaZFaviaGFaRdaFGaGfavGaGEaBGaUbbzGaufbBGavHafHahFaFHaLvaWIaeGaWIadPaMIahdbEIaYFaiJaZpaDKazxaGKaLFapLaMGaBLafKahLapvaiMaxCaHLaKDafNaxhaoOaNoacOaHhbpOamvamQaTfabRabzaKRaVdaRSaxgaESaYwalUahjbNUankafVawmaIVakfbAVahfalWamebkWaujbiWaAeakXaThaOWaqnaMXaFiavYaNdbaYaxibrYanrapZaDxaDZagfbiZaSibrZaJraRZaEfambbNhbhcbyeaRdbgnaFdbuFavdbhzadebZdbdebOgalfbKlakfbVdaAfbrcbGfbjZaZfbpibdgbXHaLgbAbbJgbqcaQhbKoanibLHapib\",\"mediumGrass_1\":\"HdaYaawSajbaYZaWaaygbkbaWqaIbalsaBbazGaNbaJfbdcahibfcawbaadahpabdaJHaBcathbLcaGcaedaleahdaODaGdaAEaCdaUWaIdafIabeawhbWdapdbSeaxhaefamFaXeaMraQfaJLaWfaxgbMfasmaEgaooaogatgbxgaYCajhaaEanhaBMaOhaybbpiahUaOiaCaaJjapEaLjaDKatjaAabwjaHbaxkamWamkaBjaBkaUnaClaIsaElaIBaolaDIaXlanNaymaAqaZmaMuamnafGalnaqOaAnaqpaSnaVPaDnaSAaFoavuaRoaYDaVoaJFakpaHzaTpaFxavqaLRapqafmaLqaXIaUqalGassattaKsaxCaOtasEaStajeaVuazKaLuaxaaevaKKanvaexaTvapAafwauHaTvazEaNwaGcalxaIEapxaQdagyalwazyaMHaByatDavzaDzaWzaLyaMAaEibKAadzaEBadgbDBaribRBapzaSCarOarDaVaaKDauyaiEauJagEalibMDaaLaFEaEdbjEatgaWEaEKaYEaoIaAFaFMaGFaLibBFaPJahGaIOamHavMapHaZKaPIacoajKakuajKaqHaCKaniatLaHDazLaZKaALarwabMaTfbNMaMnalNazraYMaYxaPMaVBaPMakDajNaHNaWMalnaxNanhbBNayqaNOabBaPOaqiaPPaklaOQacuaGQajfbDRakhaWRaawaaSaYlaBSaWebJSaljbvSaVfbTTaVcaAUaYpasVaQuapVaZpazVatyaPVadeafWaClaqWazoafWaDqasWaOoaaXaRfbgXaCgbUWaGhawYaFvasYarpaXYaHvaFYaHjaKZaafadabKwaXZakwavbbYxabcbAjarcbgBaGcbUbbodbUCaAdbEEaFdbBFaVdbMHaRdbSibHdbcBaBebGiahfbmjbifbWiaBfbxpaGgbnDaHgblPalibhQaQhb\",\"tree_1\":\"FoaBbaMIaKsawOaSFaavaNMaBsawQaeiaSfbydaZZaVcadabGeabbbLfaZZafgaYZamgaAabEhaVabvjauZaWjaVZaZjawabLkalbbQlaMabVkapabEkaqabUmasbbfoajcbxoaZcbHpagdbqqaCcbBraJebHqaLcbrrasdbrrasdbHsaYcbGsaOdbztagfbBuaQebvtaCdbStaXdbPuaYdbSuaMfbivaJgbzvaBgbiwaIhbRvaUgbfwaribkwaKibMfaebbDiaMcbBladdbJmaRebuqaoebTpawgbvsaSfbQqaqfbBtalhbxyaJhbcBathbBzajjbMxanebVwajfbpzaggbgBaZebSxangbXvaEcbPxaFbbPuacabDtakbbItagcbBqakabjsabYaZraqbbPoavZaWnaHXaDlaaZaFnarZaulaYVafkaIXaJhayXaHfaCXaAeawYaOcaAWaSbafYajdaGYa\",\"tree_4\":\"HTanhaOAassaAuauuaswazCaSzatDaFoaGLaAvahZajeakdbteaVebJiaxdbtlaNebrpaDebKoaKgbAraQibtsauhb\",\"tree_2\":\"wzapraMCaQfbnEavfbIvaRibgvaAhbZvaohbvvabgbJuacfbxtaVdbRtaHebZwaBjbFsarebRramdbbsaQdbbpaqdbIpamcbdqaNcbWnaocbmnaGbbnmaWabijaCabRiaDZaoiaAabBiaRZajhamabNgaKabrfavabPeaQZaqeagabeeaWabGdanbbMuaSibHtaLibYtawgbYsaofbKoakebpnaCcbLoaobbXoaWbbBlaYbbsjaucbRiaabbWfaScbhhaFbbEeaqcbMeaIYaahaCYaYdaVWaziavYaejaRWaalaSYaPlaWWaXmajabmraWbbdsaFZaqqaTXaBuaRYajvancbBtaKcbqwapebewadfbvxaejbMBaQhb\",\"tree_3\":\"OaaXtaWIaLFaIcbGhbVraNibyqaLibkraihbRnaifbbmaHebplaSdbijagebbhaqdbOfavebgfatdb\"},\"StoredMonsters\":[],\"StoredNPC\":[],\"Houses\":[],\"MapActions\":[],\"Chests\":[]}" }, { "x": 0, "y": -1, "zone": "In House", "data": "{\"Background\":\"2-9600lc4NbOb95lc4TbUb95lc4TbUb95lc4TbUb95lc\",\"Objects\":{},\"StoredMonsters\":[],\"StoredNPC\":[],\"Houses\":[],\"MapActions\":[],\"Chests\":[]}" }, { "x": 0, "y": 0, "zone": "Base", "data": "{\"Background\":\"2-Rajb2RajbRajbsaBazaDa2tauajb2Rajb3Ra2jbRa3jbRaVaMa14ZaQajbRajbRajbRajbRajbRajbRa3jbRa2jb4RajbRa3jb2Ra2jb5Rajb5RajbRa3jb3Ra6jbRa2jbRajbsaBa4zaHaDataua3Ra4jbRajbRajbRajbVaLaMa12ZaQajb3Ra2jbRa3jb6RajbRajbRa2jb3Ra2jb3Ra2jb2Ra2jbRa5jb6Ra2jb2Ra2jbRaHcxc4Jc2zaHa5zaHaDauajb3Ra4jb2RajbRajbRaVaLaMa9ZaKaTa3jb4RajbRajbRa2jb4RajbRajbRajb2RajbRa2jbRa2jbRa6jbRa2jb3RajbRajb2Ra3jbRajb2RaKcjbRajbRaya4HazaHazaHazaDauaRa3jb7Rajb2RajbVa3LaMa2ZaKa2LaTajbRajb2Rajb2Ra2jb4Rajb2Rajb3Ra3jb2Ra2jbRajbRajb3Ra3jbRajbRa2jbRajb2Ra4jb3Ra3jbKcjb2Rajbya5zaHazaHa2zaDaua3jb2Ra2jbRa2jbRajbRajb2Ra2jbVa2LaTaRajbRa2jb3Rajb2Ra2jb5Rajb4Ra2jb3Ra3jb2Ra2jbRa2jb2Rajb2Ra3jb2Ra3jb3Ra4jbRajbKcRa2jbRaya2Ha5za2HazaHaAaRa3jbRajb2RajbRa3jbRa3jb2RajbRa2jbRajbRa3jb2RajbRajbRajbRa4jbRajb3RajbRajbRajb3Rajb3Rajb6Ra4jbRa4jb3RajbRa3jbKcjbRajbRaEava2za2Ha2za2Ha2zaAa3jbRajbRajbRajb3Ra6jbRa2jbRajbRa2jbRajb2RajbRa4jb2Rajb7Rajb2Rajb2Ra3jbRajbRajb2Ra3jbRajbRajbRajbRajb4Rajb4RaDcBcRa3jbRayaza2Ha3za4HaAa5Rajb4Rajb2Rajb3Rajb2Ra2jbRajb3Ra2jb2Rajb2Ra2jb6RajbRa2jbRa3jb5RajbRa7jbRajb5Ra2jb5Rajb2RaKc4jbRajbEa10FaGa4Ra2jbRajb3Ra3jb4Ra2jbRajbRa3jbRajbRajb3Ra3jbRa6jb2Ra2jbRaaa4baca4Ra3jbRajbRa8jb2Ra2jbRajb3RaBc2Rajb3Rajb2Ra3jb2Rajb2RajbRajb3Ra3jbRa2jb3RajbRajb5RajbRa2jb2Ra2jbRajbRajbRajbRajb5RajbRajbaabajapaha2palacaRajbRajb2Ra3jbRajb2Rajb2Rajb2RajbRa2jb2Ra5jbPa3XaNa6Rajb3Ra4jbRa2jbRajbRa2jbRa2jbRa5jbRa2jbRa4jbRajbRajb2Ra2jb2Rajb2Rajb2Raaaja4pa2hapalacaRajbRajbRa2jbRajbRa3jbRajb2Ra5jb2Ra3jbRaPaYa3ZaWa5XaNajb2Ra4jbRajb3RajbRajbRa2jbRa5jb2Rajb2Ra2jbRa2jb4Ra2jbRa2jbRajb2Rajbaajapaha2pahapaha2paia2jb3Ra2jb4Rajb4Rajb2Ra8jbRaSa10ZaWaNa2Rajb2Ra6jbRa6jb2Ra3jb5Rajb3Rajb4Ra2jb2Ra4jbRaaajahapa2ha4pahapalaca3jbRa2jbRajb6Ra2jbRa2jbRajb3RajbRajbSa11ZaQaRa3jb2Ra5jbRa2jb2Ra2jb6Rajb3Ra2jbRajb5Ra3jb4Rajbaajaha3pahapa2ha3pahaiaRa2jb3Ra3jb2RajbRa3jbRa2jb2RajbRa2jbRajbVaMa10ZaWaNa3jbRajb4RajbRa2jb2Ra4jb2RajbRa2jb4Ra2jbRa2jbRajbRajb2Ra3jbaajapa2hapa4hapa3hapalacajbRa2jbRajb5Ra2jb3Rajb2Ra3jb2Ra3jbSa11ZaWaNajb6Rajb2Ra2jbRajb2Ra3jbRa3jbRajbRa3jbRajb2Ra3jbRa2jbRaaabajahapa3ha3pa2ha2pa3haiaRajb3Ra3jbRajbRajb4Ra5jb2RajbRajbRaVaMa11ZaQajb3RajbRa2jbRa2jbRajb3Ra2jbRajbRa2jbRa4jbRa2jb2Ra2jb3Rajbaajaha2pa2hapa8hapahapaiajbRajbRajbRa2jbRa2jbRa2jbRajb5Rajb2Ra2jbRajbVaLaMa8ZaKaTa3Rajb2Rajb2Ra2jbRa4jbRa3jbRajbRa5jbRa2jbRa3jbRajbaabajaha4paha4pa3ha2pa3haiajb2Ra3jb2RajbRajb4Ra3jbRajb3RajbRajb3RajbVaLaMa5ZaKaTajb5Ra4jb3RajbRajbRajbRa5jbRajb3RajbRajb3Rajbaabajapahapaha2pa3hapaha2pahapahapahapahaia3jb3RajbRajb2Ra4jbRa4jb2RajbRajbRajb2RajbRajbVa5LaTaRa3jb2Ra2jb2Ra2jbRajbRajbRajbRajbRajbRa2jb4RajbRa2jb2Raaabaja5pahapaha3pa2ha2pa3ha2pa2haia3Ra2jbRa3jb2Rajb2Ra3jbRa4jb4RajbRajbRa2jb2Ra2jbRa2jbRa4jbRa3jbRajb2RajbRajbRa3jb3Rajb2Ra2jb2Ra2jbaa2baja2hapaha2pahapaha3pahapahapahapa4hapahalacaRa3jbRa2jb2Rajb2Ra4jb2Ra4jb3Ra2jbRajb2Ra3jbRajbRajb3Ra4jbRa2jb3Ra2jb3Rajb4RajbRajbRajb2Raaabaja2hapahapa2hapa3ha2pahapa3hapa2ha2pa4hapaiajbRajb4Ra3jbRa3jb4Ra7jb2RajbRajb2Rajb2Ra2jbRa8jb5Rajb3Ra5jb2Rajb3Raaabajapaha2pa9hapa2ha3pa2ha2paha2paha2pahaia4jb4RajbRa2jb2RajbRa2jb2Ra6jb2Ra2jb2Ra3jbRa7jbRa2jbRa3jbRa2jb2Ra3jbRajbRajbRajbRaaaja2pa2hapaha2pa2hapa3hapaha2pa3hapahapa2ha2pa4haiajbRa6jb2Ra3jbRa4jb2RajbRajbRajbRajbRa2jb6RajbRajbRajbRa5jb2Ra2jb2Ra5jb2Ra2jbRajbaajaha3pa4hapa2hapahapa8ha6paha2pahafaoa4jbRajbRa2jb6Ra2jbRa3jbRajbRa2jbRa4jbRa6jb2RajbRajb2RajbRa2jbRa4jb2Ra2jbRajb2Ra2jbgapaha5pahapa3ha2pa2ha2paha3paha5pa2hapa2haia4jbRa2jbRa2jb3Ra2jb2Rajb3Rajb2Ra2jbRajb6Rajb2RajbRa4jb2RajbRa2jb5Rajb4Ra2jb2Rajbaajapahapa3ha2pahapaha3paha2pa2hapa6hapaha2pahapahaiaRa2jbRajb3Ra3jbRajb2Ra2jb3Ra2jbRajb3Rajb2Ra4jbRa2jbRajb3RajbRa5jb2Rajb2Rajb2RajbRajb2RajbRaga3ha4pa3hapahapaha2pa8hapa2ha2pa2hapahapaia4jb3Rajb4Ra4jbRajbRa4jbbaca2jb6RajbRajbRa5jb5Ra2jbRa4jb4Ra2jb2RajbRagapa2ha2pahapa8hapaha3pa2ha3pa4hapa3hapaiaRajb3RajbRajbRajb4Ra2jb2Rajb3Rajbhalabaca3RajbRajb2Ra3jbRa4jbRa3jb2Ra2jb6Ra4jbRajbaajapa2hapahapahapa6hapa2ha2pahapahapa2hapahapahapa2hapahaia3Ra2jbRajb2RajbRajb4RajbRajbRa3jb3halacajbRa2jbRa3jbRa2jbRajb3Ra2jbRajb4RajbRajb4Rajb3Raga3pahapaha6pahapaha2paha2pa2hapaha2paha2pahapaha2pafaoa2Ra5jbRajb2Ra2jb4Rajb2Ra3jbpa2hapalacaRa2jbRajbRajb5RajbRajbRa3jb2Ra2jb2RajbRajbRajbRajbRajbgapa2ha5pa3hapa5hapa2ha2pa2hapaha2paha5paiajbRa3jbRajb4Ra3jb3RajbRajbRajbRajb2pa3haia3Ra5jb3Ra2jb2Ra3jb8RajbRa4jb2Ragapa2ha5pa6ha3pa6hapa2hapaha3pa2hafaoa2jb4Ra3jb2Ra2jb5RajbRajbRa2jb2ha2pahalaca6jbRa4jb2RajbRa3jb4Ra3jb3Ra2jbRa2jbgahapa2hapahapa4ha4pa3ha2pa3ha2pa4ha2pahapaiajb2RajbRa2jb3RajbRa3jb2Ra2jb3Ra2jbRaha2pa2hapalacaRajbRajb3Rajb3Ra3jb2Ra8jbRa2jb2Ra3jbga4hapa2ha2paha3pa3hapaha6pa2ha4pahapafaoa2jb2Ra2jbRa2jb2Rajb4Ra2jbRa4jbRajb2ha3pa2haiajbRa4jbRa2jb9Rajb5Rajb3Rajb2Rajbga4ha3pahapa4hapaha3pahapahapahapaha4pa2hafaoa6Ra4jb2Rajb2Ra2jb4Ra5jbpaha3pahapaia2jbRa5jbRajb3Ra3jbRa3jb5Rajb3Rajb2Raga3paha3pa3ha2paha4pa2hapaha2paha4pahafanaoajbRa5jbRa2jb2Ra2jb2Ra3jbRajbRajb3Rajb2pahapa3halaca2jbRajbRajb3Rajb2RajbRajbRajb2Ra2jb2Rajb2Rajb2Ra2jbga2hapa2hapa7ha2paha3pa4ha3pahapafaoaRajbRa4jb2Ra2jbRajb5RajbRa2jbRa2jbRa2jbRa5ha3paia4jbRajb4Ra2jbRajbRa2jbRa3jbRajb2Ra2jbRa2jbRaga2ha2pa4hapa4hapaha3paha3pa2hapahafanaoa3Ra2jb2Ra3jbRajb2Rajb3Rajb4Rajb3Ra3jb3pa3ha2paiaRajb2Ra4jb2Rajb3Ra2jb3Rajb3Ra2jb3RajbRajbgapaha5pahapa3hapa8hapa2hafanaoa4Rajb3Ra2jb11Rajb2RajbRa2jb4Rahapa3hapa2haia4RajbRajbRa2jb4Ra2jbRajb6Ra3jbRa2jbRamadapa4ha4paha2pa2ha2pa6hafaoaRajb2Ra6jb2RajbRa4jb3Ra3jbRa2jb4Ra2jbRapaha2pa4haia7jbRa3jbRajb5RajbRajbRa2jbRajbRajbRa2jbRaga2ha5pa2hapa2hapaha3paha3pafaoajb2Ra3jb7Ra3jb5Ra2jbRajbRajbRa3jb2Ra2jbpahapa3hapahaia3Ra2jbRa2jb5Rajb3Ra2jb7RajbRa2jb2Ragapaha5pa2hapahapa2ha3pahapahafaoaRa2jb2Ra2jbRa3jb3RajbRajbRajbRajbRa3jbRa2jb3Ra3jbRajb2hapahapahapahaia5jbRajb2Ra4jb2Ra2jb3Ra4jbRa4jb2Rajbga5hapa8ha4pahafaoa4jbRa2jb5Ra2jbRa2jb5RajbRajb3Ra2jbRa3jbRa2jb3ha2paha2paiajbRajbRa2jb2Ra3jb2Ra3jb2Ra4jbRa2jb5Ra2jbmadahapa3ha2paha2paha3pahapahafaoa2jb3Rajb6RajbRa2jb2Rajb2Ra2jb3Ra2jbRajb4Ra4jb2hapa3ha2paia2Ra2jbRajb11Ra3jbRajb2Rajb2Ra4jb2Raga2ha2paha8pa2ha2paia3jb2Ra4jbRajbRajbRajbRa3jbRajbRajbRa2jbRajbRajbRajbRajb2Ra2jbRa2hapahapaha2paia2Ra2jb3Rajb9Ra2jb2RajbRajbRajbRajb5Raga2pahapahapaha2paha2pa3hapafaoajb2RajbRajbRajbRajbRa2jb2Ra9jbRa2jbRajb4Rajb2Ra2jbaahapa5hapaia5jb3Ra2jb3Rajb3Ra2jbRajbRa8jb3Ramadapa2ha3pahapa3hapa3haia2Ra2jbRajb6Rajb3Rajb2Ra2jb3Ra3jb2RajbRa7jbaaja8haia2RajbRajb2Ra2jb6RajbRa5jb2Ra2jb3Ra2jbRa2jbga7pahapa4ha2paiajbRajbRa3jb2Ra2jb2Ra2jbRa3jb2Ra5jbRa5jb2RajbRajbaaja2ha5pahapaiajbRa2jbRajb3Rajb2Ra2jbRa5jb4Ra3jb3Ra3jbRamada4paha4pa3hapahaiaRa10jbRa3jbRa3jb2Ra7jbRajb4Ra2jbaaja3ha4pa3haia2RajbRajb2RajbRajbRa2jb3Ra2jb2Ra2jbRajb2RajbRa2jb2Ra2jbRagapa3hapaha6pa2haia2Ra6jbRa4jbRa3jb2Ra4jbRa2jb3Ra2jb2Ra3jbga2pahapa2hapaha3paiaRa5jb3RajbRajb2RajbRajb2Ra2jbRa4jbRa3jb4Rajbmada2paha2pahapa3ha2pahaiajb2Ra3jb3Ra4jb2RajbRajb2Rajb4Rajb2Ra2jbRa3jbRajbga2hapadapa5hapaiajb3Ra4jbRajb2Ra4jbRa2jb2Ra10jb5Raga2ha2paha3pa2ha3paiajbRajbRa3jb9Rajb6Ra3jb3RajbRa3jb2Raga2hapamanadapa3hafaoajbRa2jb5Rajb2Rajb2Rajb2Ra5jbRa2jb4Ra2jbRajb2Ragapahapaha4pahapaha2palacaRa6jbRa4jb3Rajb2Ra3jbRa2jb7Rajb2Rajbga3ha2jbmanada2halacaRa4jbRajbRajb2RajbRa4jb2Ra3jbRajb4Rajb2Ra2jbRa2jbga2hapaha7paha2paiajbRajb3Ra2jbRajb3Ra2jb2Rajb2Rajb2Ra2jbRa3jbRa2jbRajbRagapahapajb3Ramadapahala2bacaRa7jbRa3jb2Rajb3Ra2jb2RajbRajb2Ra3jbRa2jbmada2hapaha2pa3hapaha2palacaRajbRa3jb3Ra3jbRa2jbRa2jbRa2jb2Ra2jb8RajbgapahapaRajbRajbRagapaha2pahala2bacaRa2jb3Ra4jbRa3jb2Rajb3Rajb2Ra4jb3Rajbgahapa2hapa2hapahapa2ha2paiajbRajb2RajbRa2jb2RajbRajb3Rajb3RajbRa4jbRajb2Ra2jbRagahapaha5jbgapahapahapa2hapalabaca5jbRa3jbRa2jb2RajbRa2jb3RajbRa2jb4Ragapa4hapa2hapa3hapahaiaRajbRa2jb2Ra2jb2Ra2jbRa3jbRajb2Ra4jbRa3jb3RajbRaga2pahajbRa2jbRaga4pa5hapala2bacaRajbRajbRa5jbRa2jbRajbRajbRajb2RajbRajbRajbga5hapa2ha4pahapalaca2jb3RajbRa3jbRa2jbRajbRajbRa2jb5Ra5jb3Raga2paha2jb2Raaajapa3ha4pa3hapahala2baca2RajbRajbRa4jbRajb2Rajb3RajbRa2jbRagaha3pahapa2ha2pa5haia2Ra3jb3RajbRajbRa3jb2Rajb7Ra7jbRamada2pa4jbgapa4hapa2ha3pa2hapa2hapalabacaRajb3Ra2jb2Rajb3RajbRa2jb4Ragapahapa2hapaha2paha2paha2palaca3jbRa3jbRajbRajbRajb2Rajb2Rajb3RajbRa3jb5Rajbga2ha3Rajbga5ha2pahapa2hapahapahapa3halacaRa2jb3RajbRajbRajb3RajbRajbRajbRagapaha6pa2ha2pa3hapaiajb2Rajb5Rajb2Ra3jb4Ra3jb2RajbRajb6Ragahapa2jbRaaaja2ha4pa6hapahapaha2pahapalaca4jb3Rajb2Ra3jbRajbRa2jbRaga2hapa3ha7pa3haia2RajbRa2jb2Ra3jb4Rajb2RajbRa3jbRa2jb4Ra2jbRamadahaRa2jbga2paha2pa5hapahapaha2paha5palaca2jbRajb2Ra2jbRa4jbRa4jbga4pa2hapa2ha2paha2pa2haiajbRajb2Ra2jb4RajbRajbRa4jbRa3jbRa3jb4RajbRajbgapa2jbaajapa4ha2paha4pahapa2ha2paha2pahapaia2jb2Rajb2Ra2jb2Ra2jbRajbRa2jbgahapaha2paha7pa3halaca2RajbRajb2Ra4jbRa2jbRajb2Ra2jbRajbRa2jbRajbRa5jbmadaRajbgahapaha4paha2pahapa4hapa3ha2pa2haiaRajbRa2jb3RajbRajbRa2jb4Raga2paha2paha2paha2pahapaha3paiaRajb4Rajb2Rajb4Ra4jbRa3jb4Rajb2RajbRajbRajbga2jbga4ha2paha5pa3hapa2hapa3hapahaia3Rajb2Ra3jbRa6jb2Ragahapa2hapahapa4ha2pa2hapahaiaRajbRajb2Ra4jb4RajbRa2jb2Rajb2Rajb2Ra2jb3Ra2jbRamajbaajaha2pa2ha2paha3pa4ha2pa2ha5paiajbRa3jbRajb2Ra2jbRajb4Rajbmada2pahapahapaha3pa2hapa3haiajb4Ra2jbRajb2RajbRajb2Rajb2Ra2jbRajbRa4jbRa4jbRajbRagapaha2pa2hapa6ha3pahapa6hapaia2jb2Ra2jbRajb2Ra2jb4Ra2jbRagapa5hapa4hapaha3paiaRa3jbRajbRajb3Ra3jb2Ra2jb3Rajb3Rajb3Ra2jbRa3jbaaja2ha3pa2hapaha2pa2ha2pa7hapa2haia2Ra2jb3Rajb3Ra2jb2RajbRajbRagaha3pahapa3hapaha2pa2hapaia2Ra6jbRajb2RajbRa3jb4Ra2jbRajb3Ra3jb2Ra2jbgahapa3ha2pa2ha3pa2ha2pa2ha4pa2hapafaoa6jbRajbRa2jbRajbRa5jbmadahapaha3paha3paha2pa2haia2jb2Rajb7Ra2jb4RajbRa2jbRa2jbRa2jb4RajbRajbga3pa2hapaha2pahapa2hapa3hapahapa3ha2paiaRajb2Ra5jb2Ra2jbRa3jbRajbRajbga4pahapa2ha3pa4haia2jbRa2jbRajb2Ra3jb2Ra2jbRa2jb3RajbRajbRajb8Raga2ha4pahapahapaha3paha5pa2hapahafaoaRa2jb4Ra2jbRajbRajbRajb2RajbRa2jbga2hapa2ha2paha3pahapahapaiajbRajbRa4jb2Ra3jbRajb4Ra2jb2Ra2jb5Ra5jbjaha2pa2ha2paha2pa4hapaha7pahaia6jb4Rajb6RajbRa2jbRamadapaha3pa2hapaha2pa3haiajbRajbRa2jbRajb2Ra2jb7Rajb4RajbRajbRajb2Ra4jbha2pa4hapahapahapa2hapahapahapaha4pafaoa3jb2RajbRajbRajb10Ra2jbRagapa5hapahapahapahapafaoa5jb2Ra2jb2Rajb4Ra3jbRajb2Rajb2Ra2jbRajb4Rajb2pa5ha2pahapa2hapaha2pa4hapahafaoa2jbRa3jb3Ra4jb3Rajb2Ra2jbRa2jbmadapa2ha5pahapa2haiaRajbRa5jbRa2jbRajbRa2jb2RajbRajbRa2jbRa2jb2Ra4jbRa2jbpahapaha4paha2paha3pahapa3ha2pafaoajbRajb2RajbRa2jb2Rajb2Ra2jbRa2jbRajb2Ra3jbgahapaha3paha2paha2paiajbRajb2Rajb2Ra2jbRa2jbRa3jbRajb3Ra2jb2RajbRajb3Ra2jbRajbha3pahapa2ha2pa3hapa3hapaha3paiaRajbRa2jbRa5jbRa2jbRa6jbRa2jbRa2jbmadaha2pa3ha2pahapahaiajbRa3jbRajb2Ra2jbRajb2RajbRajb2Ra4jbRajbRa3jbRa2jbRa2jbhapa3ha2pahapa5hapahapaha2pahafaoa4Ra2jb5Rajb6Ra2jb4Rajb2Rajbmadaha7pahafaoajbRajb3Ra3jb4Ra2jbRajb2Ra2jb2Rajb3Ra2jb2RajbRajb2Rapa3ha2pahapaha7paha2pahafaoa4jbRa2jb2Rajb6Ra5jbRajb3Ra4jbmada2ha4pa2haia7Ra2jb2Ra2jb4Ra2jbRa2jb2Ra2jbRajb5Ra4jb2hapahapa2ha3paha2pa3ha2pahafaoa7RajbRajbRa2jb4Ra2jb2Rajb3Ra4jb3Ramada2pa3hapafaoaRa2jb3Ra2jb2RajbRajbRa2jbRa3jbRa2jbRajbRajb3RajbRajbRajbRajbdaha2pahapaha2paha2pa3ha3pafaoa2RajbRa3jb2Ra2jb4Ra2jb2Ra3jbRajb3Ra2jb2Ra3jbmada2hapahafaoa5jbRajb5Ra2jbRa4jbRajbRa3jb3RajbRa2jbRa3jbRajbga6pa4ha3pa2hafanaoa2RajbRa2jb2Ra2jbRajbRajb4RajbRajb4Rajb2Ra2jbRa4jbRama4naoa3Ra2jb2Ra2jb2RajbRa3jb2RajbRajb5Ra3jb5RajbRajbRajbmadapa2ha2pahapahapa2ha2pafaoajbRa2jb3Ra6jb2Ra3jbRa2jb2RajbRa2jb5Rajb3Ra3jbRa6jbRa2jbRajbRa2jb4Rajb2Ra6jbRajbRajbRa3jb2Ra2jbRa2jb2Raga3ha2paha2pahapahapafaoa4Ra2jb2Rajb3Ra4jbRajbRa2jbRa4jbRa2jbRajbRa3jbRa2jbRajb2Ra2jbRa2jb2Ra3jbRajb2Ra3jb2RajbRa4jb7Ra5jbRajb4Ramada2pa2ha2pahapahafanaoa5jb3Ra3jb4Ra3jbPaXaNaRajb3Ra2jbRajb3Ra3jb2Rajb3Rajb2Rajb3Ra2jbRa3jbRa4jbRa3jb2RajbRa4jb2RajbRa4jbRajb3Ra2jbmadahapa2ha2pafanaoaRajbRajbRa3jbRajbRajb3Ra2jbPa2XaYaZaWaXaNa4jb7Rajb3RajbRa3jb2Ra2jbRa5jbRajbRa2jb2RajbRajbRajbRa2jbRajb2RajbRa7jb2RajbRa2jbRama6naoaRa2jbRajb2Rajb2Rajb2Ra2jbRa2jbPaYa6ZaQajb6Ra3jbRa2jb2Rajb2Rajb2Ra2jb4Rajb2Rajb4Ra7jbRajb7Rajb2Rajb2Ra4jbRa2jb2Rajb3Ra2jbRajbRajbRajb7Ra2jb2RajbPaYa7ZaQaRajb2Ra2jbRajb2Rajb3Ra4jb4Rajb3RajbRa2jb3Ra4jb3Rajb9Rajb5Ra4jbRajb2Ra2jb2RajbRajbRa2jb2Ra7jbRajbRajb2RaPaYa8ZaQajbRajb3Rajb2Ra5jbRa3jb3Rajb6RajbRajbRa7jb6Rajb5RajbRa4jb2Rajb2RajbRajb2Ra2jb2RajbRajbRajb2Ra3jb3Ra2jbRajbPaYa9ZaQa2jbRajb5Ra4jb5RajbRajbRajb2Rajb5Ra3jb4Ra2jb6RajbRa2jbRajbRajbRajb3RajbRajbRa2jbRajb2Rajb5Rajb2Rajb2Rajb2RajbRajbRaSa10ZaQa2jb2Ra2jbRa6jbRajb4Ra2jbRa4jb3RajbRa2jbRajbRa3jb3Ra2jb4Ra2jbRa2jbRa3jb5Rajb2RajbRajbRajb2RajbRa5jbRa3jb2Rajb2RaSa10ZaQa2RajbRa4jbRa2jbRa2jbRajbRa2jbRajb2Rajb2Rajb3RajbRajbRajb2Rajb3Rajb3RajbRa2jb2RajbRa4jb2Ra5jb2Ra2jb2Rajb2Ra4jbRajbRa3jbRajb2RaPaYa9ZaKaTajb3Rajb2RajbRajb2Ra2jbRa3jbRa2jbRajbRa2jb3Ra3jbRa3jb3RajbRajb2Ra3jb2Rajb2RajbRajbRa4jbRajb2Ra2jb2Ra4jbRa5jb2RajbRajbRa2jbRaSa9ZaKaTaRajbRajbRa4jbRajb3Ra2jb3RajbRajbRa6jbRa3jbRa2jb2Ra2jb2Ra2jb3Rajb11Ra3jb2Ra2jb3RajbRa4jbRajb2Ra2jb6RajbVaMa7ZaKaTajbRa2jb4Ra2jbRa2jbRajbRajb4Ra2jbRajbRa2jbRa4jb2Rajb3Ra3jbRa6jb2Ra4jb4Rajb2RajbRajb3Rajb2Rajb2RajbRajbRa3jb3Ra3jbRa2jbSa5ZaKaLaTa2Ra2jb4Ra2jbRa2jbRa2jb5RajbRajbRajb2RajbRajbRajb3Rajb2RajbRa3jb2RajbRajb3Rajb2Rajb4Ra3jbRa3jbRajbRajb2Ra3jb2Ra3jb4Ra4jb2RaVa5LaTaRa3jbRa3jbRajb2Ra3jb3Rajb3Rajb2Rajb2Ra2jb3Ra2jb2Rajb4Ra5jb3Ra3jbRajb2Rajb6Ra2jb2Ra2jbRajbRajbRa2jbRajb3Rajb2Rajb2RajbRajb7Ra2jb3Ra9jbRajbRajbRa2jbRajb4Rajb2Ra2jb7Ra3jbRa4jb4Ra4jb2Rajb2Ra4jb2Ra2jb3RajbRajbRajbRa3jb2Rajb3Ra2jbRajb3Ra2jb3Rajb2RajbRajbRajb2Ra2jb2RajbRa4jb6Rajb4Ra4jb4Rajb2Ra5jbRajb2RajbRa2jb2Ra2jbRajb4RajbRa2jb2Ra\",\"Objects\":{\"smallGrass_1\":\"KoajaaMKadaaiTafaaKnajbagVahbaZZaXaaWjaxbaAkasbanMavbalBaucawEaYbaSraqdaEJaOdaRUaKdaDZaZdakKaGeavMaLeazwapfasIadfaVYayfaWvangaZBaNgaahbOgaCjbsgaBoaPgaOsaPgafHalhaDHaRgaBKalhabdbWgabjbshazDaUhaFbaliaFsaniavzaQiaLgbKiaxCaEjaInaqkaEcbTjadqaMkaGebNkaJfbDkaHbaBladvaelaLZaolaXgbGlaLaaWlaOhaxmaTyawmaiDazmapbacnahcaqnaCramnaXzaknaogbknaHjakoajvajoaOvaGoaXwauoajraZoaWcbdpaYgawpaYoaCpaoyaHpaOhbXpaInazqapwawqaLWaqqapdaRqaKkaQqahqajraetaBraOiaYrawZawsaDXaQsavjbPsavYaltapibztadkaauaivaTtaoiaDuaToaUuaPsaxvaVgbJvaidbIwarhaexaMsaTwaOvahxaDwakxakmaEyaqqaCyavRaDyaJfaezaYcbQyaivaBzaicbEzaxkapAaYvaTzaexauAaTraYAamOaZAaBfbAAaHraHBaVvarBaDwapBaibboBaiiaGCaBOavCamiaWCafmavDaWwaqDaiSamDaHTazDagkaFDaYmaMDaaAaVDafebLDaQfbEDaYlaiFaKqatFaNfbTEaVjazFatWavFaMcbMFaerayGaDtapGanvacGaTqaQHaCRaPHadRaYIaCUaMIapVaNIaLgbyIazgbuJaGBaeKaPNadMamwaRManAaiNaJYadNajZanNaVuaSNaHQaTNazcbaOayhbjOadabSOaAgbTOaruajQaTwaaQayBakQaHyaWQauBacRaQRaVQaYsavRayhbsRaNCaVRaMXapSaVXaLRaWWavSaDwamTaRXaMTaXCagVafUabVaVVaiVahSawVapTavVaefbXVaHebiWaNpagXalDaJWaLDaJWaXhbVWaICaNXaffbvXaEpajabvOababWsaMabOxayabtWaCabZcbDabvfbVablaaUbbNJaTbbwQaGbbHXaccbwgbWbbtLaycbthbkcbgKaedbvEaMdbPUaSdbUzadebAbaYebWDaSebUMamfbHVaZebtYaQebJfawfbjUaIfbooajgbXbaahbLoaLgbjJaKgbKUaZgbRYaLgbDbbJgbpFaohbLPaFhbXIaeibrSaVhb\",\"mediumGrass_1\":\"LDaBaaqiaHaaKGaXaaBJaqbaJabDbaGbbIbasgbGbabjbtbammajcatSahcahebgcasnaFdapEawdaQsaTdazCaKdaCFaLdaaXaLdavCaxeaUdbSeaHUavfaABaCfajhbOfaFabghaRXaGhaDxatiadKagiaJYawiaeEagjawZaZiaBjbTiamDanjaFVaHjaDDaYkaifbElazdaOlaqsaYlaiZaMlamwaSmaFAaSmazBaFmaLgbsmavfaanaHlatnaKhbmnaFdbUnasraroaSsaroaSgbuoaDdaqpaBwafpaBYaUoaQZagpaKibxqaFjahradvaZqaAwaKqaiabjraThbdraOkaBraddbSraKfahtaubbttaTialuaGXapuadgbVtazgaPuaagbMuaAhbBuaMhaZuaqpazvaIebLvaZgavwaqrawwabxakwaOabvwaFbbswaXdbJwaNhbowaHUaTwakiaTxatSazxaHbbwxabgbBxaPmafyaXQakyaKZaAyaemaLyacoaKyaUibHyanjavzaikaFzavtauzafuaxzaHfaoAavqaUzaWqaqAaMZahAayjbZzasbbQAaifbOAakibXAaJcbHBanfbFBanhaLBaikaZBawmaUCaGqaFCaLSaxCaLsayDaIuaADaZKaXCaOQauDapjagEanqaPDaWraZDajzaFDazlakEambbbFaVgbfFaRkaIFaOpaCFaWAazFaZgaEGaSzawGaEYalGaahaXGaokadHaEmabHaqnaNGacOakHaujacIaptaoIavebnIaIPadJaUqasJajvazJanNahJaiUalKaTOarKaUVaNKaiabBKavabUKaAzaqLaFQafLaxfbrLaFNaNMaBUaIMaAWakMaRYaxMaBeblMaBcbJNaWuanOaCAafOauXaDOayZaMPaOcbSPaTebMPaUsacQaphbdRafdbrRaBWapSaQZabSaNgbkSaIPasTaqVaETaIibQTaQAazUanQalUajRaDUaXhbnUaYsaSUauebfVaSUaIVabZazVaRibNVaqwaNWaUwahXaJSaZWafZaNWazpaNXaEzaSXahCaxXagRaNXaCvagYaywaWXaLUanYadhbfYaBraEYawibZYauuagZamoaNabEpaHabuGaGabkVaIabrabRabFcbxabPEacbbBUaScbPabmdbngbndbMbaLdbBdbVdbANalebdXakebCBaSeblZakfbvebefbLQaSfbIfbmfbkAahgbhFajgbsLacgbYRafgbwWaYfbuaaOgbglaTgbDNaIgbNRaXgbodazhbnOaEhbSgbFhbheagibYoadibEuaNhboIaoibhKaVhb\",\"mediumGrass_2\":\"rGagaaHZanaaYZauaaWHabbaAKalbaOEaLbaMbaZcaAdaYcaquaBdafGaudaObbQdancbLeaohbGeaSibNeaEmaAfagvaWeaFcbmfaNpaJfaVBaagaGWafgaUwaygaiJaugazhbigaumaYgajraRgaHFaDhaQLaUhaRpaniajrahiaYzapiaOcbviaBJahjayGaAjaUtagkaQuaVjaivaykajDaSjaqXaIkaktaHlaqXaklaBcbrlaDmajmaIXaYlaiabPmabdbFmaFdaknanxacnaZZahnaucahoaQfaUnauiaTnaDhbjoawcaQoalgaXoavoavpamcbIpaAyaFqayfbIqaVgbXqaZjaGraslaLraeqamrabgaLsahladtavpaCsatdbbtaswautaYcbetaymaguaTUamuaZebZtacjakvaqjaLvaYfbVvaegaexaXkatxasSafxaaTazxapnavyapYaiyapfbvyaqyaLyaRQaTyaDTaQzaKZaxzaanaXzaczabAaIZaJBaLiagCauabMBaHwazCanWaQCaaMaXCazWaXDaqhaDEaPiaKEaowatFabBatFaGQahFaZzaSFaaSaZFaXlajGartaYGaiWamHancbVGaegaNHamgaCHaRjaEHamfbvHazOaxIauOaZIaEVarJazvaVJamzaVJaPAaqKasUaVKaKBagLaBVazLaHAabMaNOaDLakUaULaqabxMaIAaRNaDWaBNagBasOaTAaePaogbKPazOafQajSaXPacibeQakPatRaHdbfRaOfbKRatOaLSaXXaESaAcbtSawSahTaxdbfVaJhbQUaTtaTVaxxalWancbDWaTdbdWaNfbvWajSaeXahPaRYakOanZaGnadabeJaLZasRaUZaTUaPZagAakbbeMasbbGRasbbgTarbbEhbsbbMDaMbboJaYcbMHaEdbgLaWdbIebxdbYnaAebBxaDebpWaBebXDayfbnFapfbDNanfbEiaigbiDaSfbjUamgbZaaWgblyachbkFaVgbWHajhbFIaghbGpaRhb\",\"tree_2\":\"cebqaatQaAbagRaObaKPaMyaFsaIzaCQaLBajPakFaaOazHaWZaSIaIpalVagmaWdbYLasebVeaduaWfayuaafawuaKhafuafiagtaxjautaEiaftaOjaSrakkaBsaHlassaXlacqaHmaSqaFlaRqaaoaupaVoasqaInalqaLraRoajradoaQqaZoaeqaEoaPpaDpaesaAnastaCmawsaDnaCtaMmaLtaUmaMuaBlaovaSlauwaMkaCvaZjakxafjaJwathaExaOhaHwawgaGxaEfaRwadeaVwaGeaLxaNcanxaidaBwahcaYvaDaajxauaaoxavbaoxaYbaCgaOsaOiaoqaNhasrafjaDrablaVnaFkapqavjaUoaZmaGpaaoaBnaToaYnahraNkaIqaPmaVoajmaxuaWiaJsaykafuaUeaIvabgaGtaGgaTuaGdaVvakeaovaMbaVyaqaalBavcakzaSbavAaxdaMzaZeaxzakhagCaCiavyaajaxzaFkaTAaWkaVAaDmaKzaQnaKyaSnaSvainaPvadpasvaBqaWtagrayuaDsafrazraYsaquaVpaOtaNqaxvagnaTvaHmawtaWkauwaHhacxabgaHya\",\"tree_4\":\"NkaZaaDzaymavRaWGazhbLOagUaQQaqGamdbnjbqebtzaqgbQAaNgbofaqhbEsaQdaYqaVfapqaUiaKoaLjaWmaWlaZjaNmawgaupajfanqaIdazqa\",\"tree_3\":\"PWaPgaOmaZnaxsayqaLjagBaoDaQbbLdakbaNdabcandaJraueaspaihaWnabmablaOoaPkaGnaBiaBrafiaCraIdaataVeaOsaCba\",\"tree_1\":\"McbgnaqwaAJaWYaJKadcbvQaXtaDSaDtajWapwatbaswabaazxaobaPwaebaMwaOcawxaieaLxaefaOwaJfajwaZhaOwaGiaiwaVjazxaRgafxaohavwagjaJvailaxwabmamvaDlaNvacmatuaEmaavaPmatuabnaotaXnaksaIoaYtaRnactapoamrazqaoqavpaUpaJqakpaPpatoaLqaunalraQnayraLmaesaimacraplaLraRkausaGkaHtaEiaduakhaPuaIgaUuayfaLuaweaJtaOdabuaHuaaaaOtaJbarvaycaWuaifaJuaVgawvashahtaDiaZtaskavsadlaRraAmaQpaulaGnaboaElaanaYkaSpaBkaAoaAjamqaKhalsadgawraWearsaijabyabgaYvayjaEvailanuafpalwavoaGsaUnaguaptaisakraGtacuaBpaQwaDraHyaHpafxaBoaUzanjaTBahlavyaMkaayaVmaJDaamaTEadiabBaehaSyawgakBaMearDaPhatCaljaWDaBeaNyaVdaKCaabaGCaMcajAalba\",\"fire_camp\":\"YeaJea\",\"fence_1\":\"WiaBaackajba\",\"sign_1\":\"Rbabca\"},\"StoredMonsters\":[],\"StoredNPC\":[],\"Houses\":[{\"Name\":\"house_1\",\"X\":344,\"Y\":34}],\"MapActions\":[{\"X\":343,\"Y\":74,\"Size\":1,\"Actions\":[{\"Values\":[\"-60\",\"37\",\"In House\"],\"Name\":\"Teleport\"}],\"Conditions\":[]},{\"X\":77,\"Y\":104,\"Size\":2,\"Actions\":[{\"Values\":[\"Come inside, I don't bite!\"],\"Name\":\"ShowMapMessage\"}],\"Conditions\":[]}],\"Chests\":[]}" }, { "x": 0, "y": 0, "zone": "Cave", "data": "{\"Background\":\"2-516lcjc21rchc7lcjc26rchc41lcjcsc21mbqchc5lcjcsc26mbqchc40lcmc23mbkc5lcmc28mbkc40lcmc23mbkc5lcmc27mbecnc39lcjcsc4mbec13fcgc4mbqchc3lcjcsc14mbec3fcgc5mbec2fcnc37lcjc2rcsc4mbecnc13lcpcgc4mbqc3rcsc14mbecnc3lcpcgc3mbecnc39lcjcsc7mbkc15lcmc23mbkc5lcmc3mbkc40lcmc8mbkc15lcmc23mbkc5lcmc3mbkc40lcpcgc6mbecnc15lcmc23mbkc5lcmc3mbkc41lcpc6fcnc15lcjcsc4mbec8fcgc9mbqchc3lcjcsc3mbqchc60lcjc2rcsc4mbecnc8lcpcgc9mbqc3rcsc5mbqc12rchc46lcjcsc7mbkc10lcmc32mbqchc45lcmc8mbkc10lcmc33mbkc45lcpcgc7mbkc10lcpcgc32mbkc46lcpc2fcgc4mbqchc10lcpc7fcgc15mbec3fcgc4mbqchc40lcjchc6lcpcgc4mbqc6rchc11lcpcgc13mbecnc3lcpcgc4mbqc2rchc36lcjcsckc7lcmc11mbkc12lcmc13mbkc5lcmc7mbqchc35lcmcmbqcrchc5lcmc11mbqcrchc10lcmc13mbkc5lcmc8mbkc35lcmc3mbkc5lcmc13mbkc10lcmc12mbecnc5lcmc8mbkc35lcmc3mbqchc3lcjcsc13mbqchc8lcjcsc4mbec7fcnc5lcjcsc8mbqchc34lcmc4mbqc3rcsc15mbqc8rcsc4mbecnc11lcjcrcsc10mbqc2rchc31lcmc38mbkc11lcjcsc15mbqchc30lcmc38mbkc10lcjcsc17mbkc30lcpcgc37mbkc10lcmc17mbecnc31lcpc2fcgc34mbqchc8lcjcsc14mbec2fcnc35lcpcgc34mbqc3rcJb4rcsc14mbecnc39lcmc58mbkc40lcmc58mbkc40lcmc57mbecnc39lcjcsc4mbec3fcgc15mbec3fcgc15mbec12fcnc37lcjc2rcsc4mbecnc3lcpcgc13mbecnc3lcpcgc13mbecnc49lcjcsc7mbkc5lcmc13mbkc5lcmc13mbkc50lcmc8mbkc5lcmc13mbkc5lcmc13mbkc50lcmc7mbecnc5lcmc13mbkc5lcpcgc12mbkc50lcmc4mbec2fcnc6lcmc4mbec3fcgc4mbqchc5lcpc2fcgc9mbqchc49lcmc3mbecnc9lcmc3mbecnc3lcpcgc4mbqcrchc6lcpcgc9mbqc2rchc46lcmc3mbkc10lcmc3mbkc5lcmc6mbkc7lcmc12mbqchc45lcmc3mbkc10lcmc3mbkc5lcmc6mbqcrchc5lcmc13mbkc45lcmc3mbkc10lcpcgcmbecnc5lcmc8mbkc5lcpcgc11mbecnc44lcjcsc3mbkc11lcpcfcnc6lcmc8mbqchc5lcpc2fcgc5mbec2fcnc42lcjc2rcsc4mbkc6lcjchc12lcmc9mbqcrchc6lcpcgc3mbecnc6lcjchc36lcjcsc7mbkc5lcjcsckc12lcmc11mbkc7lcmc3mbkc6lcjcscqchc35lcmc8mbkc5lcmcmbqcrchc10lcmc11mbqcrchc5lcmc3mbkc5lcjcsc2mbkc35lcmc8mbkc5lcmc3mbkc10lcmc12mbecnc5lcmc3mbkc5lcmc3mbkc35lcmc8mbqchc3lcjcsc3mbqchc8lcjcsc9mbec2fcnc5lcjcsc3mbqchc3lcjcsc3mbkc35lcmc9mbqc3rcsc5mbqc8rcsc9mbecnc6lcjcrcsc5mbqc3rcsc4mbkc35lcmc38mbkc6lcjcsc16mbkc35lcmc38mbkc5lcjcsc17mbkc35lcmc38mbkc5lcmc17mbecnc35lcmc4mbec3fcgc5mbec13fcgc9mbqchc3lcjcsc9mbec7fcnc36lcmc3mbecnc3lcpcgc3mbecnc13lcpcgc9mbqc3rcsc9mbecnc15lcjcrchc26lcmc3mbkc5lcmc3mbkc15lcmc23mbkc15lcjcscmbqchc25lcmc3mbkc5lcmc3mbkc15lcmc23mbkc15lcmc3mbkc25lcmc3mbkc5lcpcgcmbecnc15lcpcgc22mbkc15lcmc3mbkc25lcmc3mbkc6lcpcfcnc17lcpc2fcgc5mbec3fcgc9mbqchc13lcjcsc3mbqchc10lcjc6rchc6lcmc3mbkc12lcjchc7lcjchc6lcpcgc3mbecnc3lcpcgc9mbqc13rcsc5mbqc2rchc6lcjcsc6mbqchc5lcmc3mbkc11lcjcscqchc5lcjcsckc7lcmc3mbkc5lcmc32mbqchc5lcmc8mbkc5lcmc3mbkc10lcjcsc2mbkc5lcmcmbqcrchc5lcmc3mbkc5lcmc33mbkc5lcpcgc7mbkc5lcmc3mbkc10lcmc3mbkc5lcmc3mbkc5lcmc3mbkc5lcpcgc32mbkc6lcpc2fcgc4mbqchc3lcjcsc3mbkc9lcjcsc3mbqchc3lcjcsc3mbqchc3lcjcsc3mbkc6lcpc2fcgc5mbec3fcgc10mbec3fcgc4mbqc9lcpcgc4mbqc3rcsc4mbkc6lcjc2rcsc5mbqc3rcsc5mbqc3rcsc4mbkc9lcpcgc3mbecnc3lcpcgc8mbecnc3lcpcgc4mb10lcmc13mbkc5lcjcsc27mbkc10lcmc3mbkc5lcmc8mbkc5lcmc4mb10lcmc13mbkc5lcmc28mbkc10lcmc3mbkc5lcmc8mbkc5lcmc4mb10lcpcgc11mbecnc5lcpcgc27mbkc10lcmc3mbkc5lcmc8mbkc5lcpcgc3mb11lcpc2fcgc5mbec2fcnc7lcpc7fcgc5mbec3fcgc9mbqchc8lcjcsc3mbqchc3lcjcsc8mbkc6lcpc2fcgc14lcpcgc3mbecnc18lcpcgc3mbecnc3lcpcgc9mbqc8rcsc5mbqc3rcsc9mbkc9lcpc15lcmc3mbkc20lcmc3mbkc5lcmc38mbkc25lcmc3mbkc20lcmc3mbkc5lcmc38mbkc25lcmc3mbkc20lcpcgcmbecnc5lcmc38mbkc25lcmc3mbqchc20lcpcfcnc6lcmc24mbec3fcgc9mbkc25lcmc4mbqc7rchc21lcmc23mbecnc3lcpcgc8mbkc25lcmc12mbqchc20lcmc23mbkc5lcmc8mbkc25lcmc13mbkc20lcmc23mbkc5lcmc8mbkc25lcpcgc11mbecnc20lcmc22mbecnc5lcpcgc6mbecnc26lcpc11fcnc20lcjcsc19mbec2fcnc7lcpc6fcnc57lcjc2rcsc19mbecnc74lcjcsc22mbkc75lcmc23mbkc75lcpcgc22mbkc76lcpc17fcgc4mbqchc93lcpcgc4mbqc12rchc7lcjc6rchc66lcmc17mbqchc5lcjcsc6mbqchc65lcmc18mbkc5lcmc8mbkc65lcmc17mbecnc5lcmc8mbkc64lcjcsc4mbec12fcnc6lcmc8mbkc61lcjc2rcsc4mbecnc19lcmc8mbkc60lcjcsc7mbkc20lcmc8mbkc60lcmc8mbkc20lcmc8mbkc60lcmc8mbkc20lcpcgc7mbkc60lcmc8mbkc21lcpc2fcgc4mbkc31lcjc6rchc21lcmc8mbkc6lcjc10rchc6lcpcgc3mbkc30lcjcsc6mbqchc20lcmc8mbkc5lcjcsc10mbkc7lcmc3mbkc30lcmc8mbkc20lcmc8mbkc5lcmc11mbqcrchc5lcmc3mbkc30lcmc8mbkc20lcmc8mbkc5lcmc12mbecnc5lcmc3mbkc30lcmc8mbqchc19lcmc8mbqchc3lcjcsc4mbec7fcnc5lcjcsc3mbqc\",\"Objects\":{},\"StoredMonsters\":[{\"Name\":\"box\",\"X\":1189,\"Y\":317},{\"Name\":\"box\",\"X\":1145,\"Y\":960},{\"Name\":\"box\",\"X\":2316,\"Y\":1642},{\"Name\":\"box\",\"X\":1811,\"Y\":2427},{\"Name\":\"box\",\"X\":2183,\"Y\":568}],\"StoredNPC\":[],\"Houses\":[],\"MapActions\":[{\"X\":2227,\"Y\":995,\"Size\":1,\"Actions\":[{\"Values\":[\"-208\",\"-122\",\"In House\"],\"Name\":\"Teleport\"}],\"Conditions\":[]}],\"Chests\":[{\"DisplayName\":\"Chest\",\"Stats\":[],\"Items\":[{\"Name\":\"Spoon\",\"Quantity\":1,\"Probability\":100}],\"Name\":\"chest_1\",\"X\":420,\"Y\":409,\"AX\":0,\"AY\":0}]}" }, { "x": 0, "y": 0, "zone": "In House", "data": "{\"Background\":\"2-4Zbac9995lc\",\"Objects\":{},\"StoredMonsters\":[],\"StoredNPC\":[],\"Houses\":[],\"MapActions\":[],\"Chests\":[]}" }] };

            if (Main.CheckNW())
            {
                game = {
                    data: gameData.gameData,
                    maps: gameData.maps
                };
                for (var i = 0; i < game.maps.length; i++)
                    game.maps[i].data = JSON.parse(game.maps[i].data);
                workerGenerator = null;
                world = World.Rebuild(game.data);
                world.Id = Math.round((new Date()).getTime() / 1000);
                world.Edition = EditorEdition.Standard;
                world.Init();
                Main.GenerateGameStyle();
                world.ResetAreas();
                world.ResetGenerator();
                Framework.Rerun();
                Framework.Alert("World reset done");
                standaloneMaker.currentFile = null;
                return;
            }

            $.ajax({
                type: 'POST',
                url: '/backend/DirectImportJson',
                data: {
                    game: world.Id,
                    token: framework.Preferences['token'],
                    data: JSON.stringify(gameData)
                },
                success: (msg) =>
                {
                    Framework.Alert("World reset done, press ok to reload.", () => { document.location.reload(true); });
                },
                error: function (msg, textStatus)
                {
                    if (msg.d && msg.d.error)
                        Framework.ShowMessage(msg.d.error);
                    else
                        Framework.ShowMessage(msg);
                }
            });
        });
    }

    static Content()
    {
        if (world.Id == undefined || world.Id == null)
        {
            Framework.ShowMessage("No associated ID. Can't save.");
            return;
        }

        Framework.Confirm("Are you sure you want to delete all your world's definitions beside the maps?", () =>
        {
            $.ajax({
                type: 'POST',
                url: '/backend/ResetContent',
                data: {
                    game: world.Id,
                    token: framework.Preferences['token']
                },
                success: (msg) =>
                {
                    Framework.Alert("World reset done, press ok to reload.", () => { document.location.reload(true); });
                },
                error: function (msg, textStatus)
                {
                    if (msg.d && msg.d.error)
                        Framework.ShowMessage(msg.d.error);
                    else
                        Framework.ShowMessage(msg);
                }
            });
        });
    }

    static FullContent()
    {
        if (world.Id == undefined || world.Id == null)
        {
            Framework.ShowMessage("No associated ID. Can't save.");
            return;
        }

        Framework.Confirm("Are you sure you want to delete your world including the maps?", () =>
        {
            $.ajax({
                type: 'POST',
                url: '/backend/ResetFullContent',
                data: {
                    game: world.Id,
                    token: framework.Preferences['token']
                },
                success: (msg) =>
                {
                    Framework.Alert("Full world reset done, press ok to reload.", () => { document.location.reload(true); });
                },
                error: function (msg, textStatus)
                {
                    if (msg.d && msg.d.error)
                        Framework.ShowMessage(msg.d.error);
                    else
                        Framework.ShowMessage(msg);
                }
            });
        });
    }

    static Map()
    {
        if (world.Id == undefined || world.Id == null)
        {
            Framework.ShowMessage("No associated ID. Can't save.");
            return;
        }

        Framework.Confirm("Are you sure you want to delete all your maps?", () =>
        {
            $.ajax({
                type: 'POST',
                url: '/backend/ResetMap',
                data: {
                    game: world.Id,
                    token: framework.Preferences['token']
                },
                success: (msg) =>
                {
                    Framework.Alert("Map reset done, press ok to reload.", () => { document.location.reload(true); });
                },
                error: function (msg, textStatus)
                {
                    if (msg.d && msg.d.error)
                        Framework.ShowMessage(msg.d.error);
                    else
                        Framework.ShowMessage(msg);
                }
            });
        });
    }

    static ObjectTypes()
    {
        Framework.Confirm("Are you sure you want to reset all object types within the game? This will reset the objects and players will most likely loose their items", () =>
        {
            world.InventoryObjectTypes = ObjectType.DefaultObjectType();
            world.InventoryObjects = KnownObject.DefaultObjects();
            world.InventorySlots = InventorySlot.DefaultSlots();
        });
    }

    static Stats()
    {
        Framework.Confirm("Are you sure you want to reset all your stats? This will affect all your monster and player logic.", () =>
        {
            DefaultStats.Generate(world);
        });
    }

    static Skills()
    {
        Framework.Confirm("Are you sure you want to reset all your skills? This will affect all your monster and player logic.", () =>
        {
            DefaultSkills.Generate(world);
        });
    }

    static DefaultMonster()
    {
        Framework.Confirm("Are you sure you want to reset the default monster code? This will affect all your monster AI.", () =>
        {
            var comments = CodeParser.GetAllTokens(monsterCodes[0], "TokenComment");

            var monster = new KnownMonster();
            monster.Parse(monsterCodes[0]);
            monster.Name = monster.Code.CodeVariables["name"].value;
            if (monster.Code.CodeVariables["art"])
                monster.Art = monster.Code.CodeVariables["art"].value;
            world.Monsters[0] = monster;

            for (var i = 0; i < world.Monsters.length; i++)
                world.Monsters[i].DefaultMonster = world.Monsters[0];
        });
    }

    static AllMonster()
    {
        Framework.Confirm("Are you sure you want to reset all the monsters code?", () =>
        {
            DefaultMonsters.Generate(world);
        });
    }

    static ResetPlayer()
    {
        Framework.Confirm("Are you sure you want to reset your player? You lose all the stats, items, and quests and start as a fresh new player.", () =>
        {
            ProfileMenu.DoResetPlayer();
            Framework.ShowMessage("Done.");
            /*$.ajax({
                type: 'POST',
                url: '/backend/ResetPlayer',
                data: {
                    game: world.Id,
                    token: framework.Preferences['token']
                },
                success: (msg) =>
                {
                    document.location.reload();
                },
                error: function (msg, textStatus)
                {
                    if (msg.d && msg.d.error)
                        Framework.ShowMessage(msg.d.error);
                    else
                        Framework.ShowMessage(msg);
                }
            });*/
        });
    }

    static ResetAllPlayers()
    {
        Framework.Confirm("Are you sure you want to reset all your players? Everyone loses all the stats, items, and quests and starts as a fresh new player.", () =>
        {
            $.ajax({
                type: 'POST',
                url: '/backend/ResetAllPlayers',
                data: {
                    game: world.Id,
                    token: framework.Preferences['token']
                },
                success: (msg) =>
                {
                    //document.location.reload();
                },
                error: function (msg, textStatus)
                {
                    if (msg.d && msg.d.error)
                        Framework.ShowMessage(msg.d.error);
                    else
                        Framework.ShowMessage(msg);
                }
            });
        });
    }

    static ResetSounds()
    {
        Framework.Confirm("Are you sure you want to reset all your sounds and musics?", () =>
        {
            world.art.sounds = JSON.parse(JSON.stringify(defaultTilesets['tileset2'].sounds));
        });
    }
}